The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Увидел свет web-фреймворк Ruby on Rails 3.0

30.08.2010 20:07

После двух лет разработки представлен релиз MVC (Model-View-Controller) web-фреймворка Ruby on Rails 3.0, в подготовке которого приняли участие более чем 1600 разработчиков. Фреймворк подвергся значительной реструктуризации в результате слияния с проектом Merb. Ранее Merb выступал в роли конкурирующего проекта, рожденного с целью воплощения идеи создания легкого MVC-движка, основанного на тех же принципах и расширяемого через плагины. В результате, вобрав лучшие качества обоих проектов, Ruby on Rails 3 стал более легковесным, быстрым и легким для понимания. Фреймворк может работать под управлением Ruby 1.8.7, Ruby 1.9.2 и JRuby 1.5.2.

Основные улучшения:

  • Переработанный модуль для разбора URL (Router) акцентирован на использовании REST (Representational State Transfer) деклараций и поддерживает интерфейс для быстрого подключения внешних плагинов;
  • Язык запросов в Active Record, построенный на идеях реляционной алгебры и новом движке Arel Query Engine. Например, к выполнению SQL-запроса "SELECT * FROM users WHERE name = 'david' AND age > 29 ORDER BY name LIMIT 20" может привести следующий код:
    
          users = User.where(:name => "david").limit(20)
          users = users.where("age > 29")
          users.order(:name).each { |user| puts user.name }
    
  • Ненавязчивое использование JavaScript обработчиков, базирующихся на фреймворках, подобных Prototype и jQuery;
  • Повышение производительности компонентов Rails на основе опыта Merb;
  • Новый Action Mailer API для отправки почтовых сообщений (особенно упрощен процесс отправки писем с вложениями), поставленный уровнем выше Action Controller;
  • Переработан и включен по умолчанию встроенный механизм для защиты от XSS-атак (межсайтовый скриптинг);
  • Точное управление зависимостями при помощи Bundler.


  1. Главная ссылка к новости (http://weblog.rubyonrails.org/...)
  2. OpenNews: Релиз языка программирования Ruby 1.9.2
  3. OpenNews: Вышел Rhodes 2.0, фреймворк для создания мобильных приложений на языке Ruby
  4. OpenNews: Вышел MVC-фреймворк Ruby on Rails 2.3.8
  5. OpenNews: Представлен релиз web-фреймворка Ruby on Rails 2.3
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/27789-ruby
Ключевые слова: ruby, Rails
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (16) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Shohrukh (?), 00:33, 31/08/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ура!! Хороший пример здорового проекта! Молодцы!
     
     
  • 2.14, Фкук (?), 01:27, 01/09/2010 [^] [^^] [^^^] [ответить]  
  • –3 +/
    >Ура!! Хороший пример здорового проекта! Молодцы!

    Наверное, молодцы.
    Но для описанных задач - Python.
    Заруляет рубю по всем местам.

     

  • 1.2, ASM (??), 11:39, 31/08/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Ошибка в коде?

    Мы выделили 20 Давидов, потом находим всех, чей возраст больше 29, в итоге получаем от 0 до 20.

    Или я что-то не понимаю в этом коде?

     
     
  • 2.3, anonim (?), 11:42, 31/08/2010 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Написано что может привести, а может и не привести :)
     
     
  • 3.5, segoon (ok), 12:13, 31/08/2010 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Это я туплю или код неверный? В одном случае сначала берётся 20 штук и фильтруется, а в другом фильтруется и берутся первые 20 отфильтрованных...
     
  • 2.19, Анонима (?), 23:38, 01/09/2010 [^] [^^] [^^^] [ответить]  
  • +/
    в итоге получаем 20 раз написаное слово Давид :-)
     

  • 1.4, Kibab (ok), 11:44, 31/08/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Мне больше нравится идея сортировки по имени, притом что запрос был WHERE name = 'david'
     
     
  • 2.8, filosofem (ok), 12:55, 31/08/2010 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Как ни странно это может иметь смысл, если сравнение регистронезависимо, а сортировка зависима. Чисто гипотетически. =)
     

  • 1.6, kpkp (?), 12:37, 31/08/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    do etogo momenta:

    users = User.where(:name => "david").limit(20)
          users = users.where("age > 29")
          users.order(:name).

    nikakogo SQL zaprosa ne budet

    a vot zdes':

    each { |user| puts user.name }

    poletit zapros i pojdet iteracyja po rezul'tatam zaprosa

     
     
  • 2.9, anonim (?), 13:13, 31/08/2010 [^] [^^] [^^^] [ответить]  
  • –3 +/
    то есть он по "and" соединяет несколько .where... хотелось бы по "not or"... где писать жалобу? :)
     
     
  • 3.10, Иван (??), 15:21, 31/08/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Вы доку почитайте новой рельсы и все станет ясно. Там Довольно сильный ОРМ, а пример для непосвященных  не понятен.
     
  • 3.11, kpkp (?), 16:48, 31/08/2010 [^] [^^] [^^^] [ответить]  
  • +/
    pishyte patch ane zhalobu. v rails community kontributory v pochete.
     
  • 3.12, anonim (?), 18:26, 31/08/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Да я пошутил :) а идея встроить реляционную алгебру в язык конечно хлебная
    да и or в скором времени обещают будет у них
     

  • 1.13, zoonman (ok), 21:30, 31/08/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А чем лучше уход от классического SQL with placeholders к новому движку? Я пока не вижу преимуществ. Из соображений производительности: новая прослойка увеличивает нагрузку, также исключается низкоуровневая оптимизация посредством USING INDEXES. А  как быть со сложными запросами, использующими подзапросы, множественный JOIN?
    Дайте ссылку, что почитать. Я не против подучиться;)
     
     
  • 2.15, Helg (??), 04:19, 01/09/2010 [^] [^^] [^^^] [ответить]  
  • +/
    писать простыми SQL никто не запрещает, более того, чистый SQL код можно насаживать на AR запросы
     
     
  • 3.16, kem (?), 14:43, 01/09/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Только переносимость при этом страдает и migrations работать не будут, то есть довольно значительные плюсы ORM теряются
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру