Здравствуйте, Palmovod, Вы писали:
P>Вот слышал что он чем то похож на Java. А зачем он вообще и в чем его отличия ?
Моя личная классификация ruby:
По нотации он наиболее близок к:
VB, Python, Rebol(?)...
По архитектуре:
typeless, prototype based object model,
её исп. также: JavaScript, PHP, Python, Perl, ...
По исполняемой модели:
compiler -> bytecodes -> stack based VM + Garbage Collector.
Примерно так.
И хочу напомнить еще раз призыв Великиого Сальватора Еао:
Здравствуйте, Cyberax, Вы писали:
C>Говорю как знающий как оно все работает, RoR пригоден только для C>достаточно простых проектов. Как только структура базы или логика C>приложения становится достаточно сложным — RoR вдруг перестает быть C>простым и понятным решением.
Учитывая его юный возраст, ему это можно простить. Посмотрим, что будет в версии 2.0
C>А вот Hibernate+Tapestry продолжают рулить.
Да ради бога. Больше решений, хороших и разных!
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
CrazyPit wrote: > C>Говорю как знающий как оно все работает, RoR пригоден только для > C>достаточно простых проектов. Как только структура базы или логика > C>приложения становится достаточно сложным — RoR вдруг перестает быть > C>простым и понятным решением. А вот Hibernate+Tapestry продолжают рулить. > А можно поконкретнее какие именно косяки встречались при разработки на > RoR. И когда это было (какая версия RoR)? А то я сейчас планирую > замутить несколько проектов на RoR.
0. Совершенно никакой OR-mapping, в реальных БД (с унаследованными
идиотскими решениями и достаточно сложной структурой) оно совсем никак
не работает.
1. Управление транзакциями неудобное. Было нужно сделать долгоживущие
транзакции — получилось как через анальное отверстие.
2. Мы хотели сделать оптимистические транзакции, но наткнулись на
проблемы с sequence'ами и таймстэмпами.
3. С закачкой файлов что-то не то было.
И еще что-то там было.
Здравствуйте, Cyberax, Вы писали:
C>eao197 wrote: >> S>вот http://www.rubygarden.org/ почитай. Для написания скриптов в основном. >> Ага, особенно в свете бума вокруг Ruby On Rails C>Говорю как знающий как оно все работает, RoR пригоден только для C>достаточно простых проектов. Как только структура базы или логика C>приложения становится достаточно сложным — RoR вдруг перестает быть C>простым и понятным решением. А вот Hibernate+Tapestry продолжают рулить.
А можно поконкретнее какие именно косяки встречались при разработки на RoR. И когда это было (какая версия RoR)? А то я сейчас планирую замутить несколько проектов на RoR.
eao197 wrote: > S>вот http://www.rubygarden.org/ почитай. Для написания скриптов в основном. > Ага, особенно в свете бума вокруг Ruby On Rails
Говорю как знающий как оно все работает, RoR пригоден только для
достаточно простых проектов. Как только структура базы или логика
приложения становится достаточно сложным — RoR вдруг перестает быть
простым и понятным решением. А вот Hibernate+Tapestry продолжают рулить.
Здравствуйте, Palmovod, Вы писали:
E>>Ага, особенно в свете бума вокруг Ruby On Rails
P>Насколько я понял это фреймворк (среда разработки) для создания веб-сайтов ?
А про среду разработки, сами разработчики Rails говорят так:
The entire Rails core team is using TextMate on Mac OS X. It's a fantastic editor that ships with Ruby on Rails highlighting and macros. If you're not running Apple, checkout RadRails. It's a cross-platform Rails editor build on top of the Eclipse IDE.
Сам я RedRails не смотрел, но вот по демкам Rails видно, что TextMate -- ядреная штука, жаль, что я не на Apple разрабатываю
SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Здравствуйте, Trean, Вы писали:
P>>Но ведь он объектно-ориентированный? Не слишком ли это "для скриптов" ?
а чем это плохо? А скиптовый он или нет зависит не от того объектный он или нет, а от того, предназначен он для написания небольших утилит, автоматизирующих ту или иную деятельность или нет.
Так вот ruby самый что ни на есть скиптовый язык, очень красивый и лаконичный, вобравший в себя множество фич множетва языков от lisp до perl.
T>Рекомендую еще почитать Beyond Java от Bruce Tate. Там про Ruby в том числе упоминается. а вообще интересная книженция.
Надо почитать. Хотя после беглого просмотра и случайного прочтения фразы "I didn't write my first EJB until 2003", с учетом того что в 2003 году была выпущена книга Bitter EJB я стал относиться к работам Тейта более скептически, так как во многом они напоминают грамотно слепленую маркетинговую пилюлю для програмиста. Но в любом случае, за Спринг я ему благодарен.
eao197 wrote: > C>Говорю как знающий как оно все работает, RoR пригоден только для > C>достаточно простых проектов. Как только структура базы или логика > C>приложения становится достаточно сложным — RoR вдруг перестает быть > C>простым и понятным решением. > Учитывая его юный возраст, ему это можно простить. Посмотрим, что будет > в версии 2.0
Я достаточно долго держал RoR на заметке как перспективную среду для
разработки приложений, да еще и неплохо интегрирующуюся с С++.
Путь RoR мне совсем не нравится — они делают "крутые" фичи типа AJAXа,
которые реально просто не будут работать. Точно так же, они отказываются
делать более сложный OR-mapping, так как тогда пропадет автомагичность RoR.
Здравствуйте, Cyberax, Вы писали:
C>0. Совершенно никакой OR-mapping, в реальных БД (с унаследованными C>идиотскими решениями и достаточно сложной структурой) оно совсем никак C>не работает.
Разве, помоему там всё хорошо кастомизируеться.
C>3. С закачкой файлов что-то не то было. C>И еще что-то там было.
А это я думаю детская проблемма, скоро пройдёт, а скорее всего уже поправили.
CrazyPit wrote: > C>0. Совершенно никакой OR-mapping, в реальных БД (с унаследованными > C>идиотскими решениями и достаточно сложной структурой) оно совсем никак > C>не работает. > Разве, помоему там всё хорошо кастомизируеться.
В том-то и дело, что нет. Там используется полуавтоматический mapping
полей на результаты запросов. При сложной структуре это совсем не помогает.
Здравствуйте, Palmovod, Вы писали:
P>Какие сферы применения на сегодня у Ruby ?
Имхо, те же, что и у Python-а.
А вообще, куда приткнешь, там и будет работать. Исключениями могут стать, разве что:
-- системы реального времени (т.к. Ruby не быстрый язык) и
-- случаи, когда нельзя предоставлять заказчику исходные тексты приложения (т.к. у Ruby нет возможности распространять программы в виде байт-кода).
SObjectizer: <микро>Агентно-ориентированное программирование на C++.