Учебники

Ruby on Rails 2.1 — Введение

Прежде чем мы начнем ездить по Rails, давайте вспомним несколько моментов Ruby, который является основой Rails.

Рубин является удачным сочетанием —

  • Концептуальная элегантность Smalltalk,
  • Простота использования и обучения Python, и
  • Прагматизм Perl.

Руби это

  • Язык программирования высокого уровня.
  • Интерпретируется как Perl, Python, Tcl / TK.
  • Объектно-ориентированный, как Smalltalk, Eiffel, Ada, Java.

Почему Руби?

Рубин появился в Японии и сейчас набирает популярность и в США, и в Европе. Следующие факторы способствуют его популярности —

  • Легко обучаема
  • Открытый исходный код (очень либеральная лицензия)
  • Богатые библиотеки
  • Очень легко продлить
  • Действительно объектно-ориентированный
  • Меньше кодирования с меньшим количеством ошибок
  • Полезное сообщество

Хотя у нас есть много причин использовать Ruby, у вас также есть несколько недостатков, которые вы, возможно, должны рассмотреть, прежде чем внедрять Ruby:

  • Проблемы с производительностью. Несмотря на то, что он конкурирует с Perl и Python, он все еще является интерпретируемым языком, и мы не можем сравнить его с языками программирования высокого уровня, такими как C или C ++.

  • Модель потоков — Ruby не использует собственные потоки. Потоки Ruby моделируются в виртуальной машине, а не работают как собственные потоки ОС.

Проблемы с производительностью. Несмотря на то, что он конкурирует с Perl и Python, он все еще является интерпретируемым языком, и мы не можем сравнить его с языками программирования высокого уровня, такими как C или C ++.

Модель потоков — Ruby не использует собственные потоки. Потоки Ruby моделируются в виртуальной машине, а не работают как собственные потоки ОС.

Образец кода Ruby

Вот пример кода Ruby для печати «Hello Ruby».

#!/usr/bin/ruby -w

# The Hello Class
class Hello
   # Define constructor for the class
   def initialize( name )
      @name = name.capitalize
   end

   # Define a ruby method
   def salute
      puts "Hello #{@name}!"
   end
end

# Create a new object for Hello class
obj = Hello.new("Ruby")

# Call ruby method
obj.salute

Это даст следующий результат —

Hello Ruby

Для полного понимания Ruby , пожалуйста, пройдите наш учебник по Ruby

Встроенный рубин

Ruby предоставляет программу ERb (Embedded Ruby), написанную Seki Masatoshi . ERb позволяет помещать код Ruby в файл HTML. ERb читает слово в слово, а затем в определенный момент, когда он встречает код Ruby, он начинает выполнять код Ruby.

Вам нужно знать только две вещи, чтобы подготовить документ ERb —

  • Если вы хотите, чтобы какой-нибудь код на Ruby был выполнен, заключите его между <% и %> .

  • Если вы хотите, чтобы результат выполнения кода был распечатан как часть вывода, заключите код между <% = и%> .

Если вы хотите, чтобы какой-нибудь код на Ruby был выполнен, заключите его между <% и %> .

Если вы хотите, чтобы результат выполнения кода был распечатан как часть вывода, заключите код между <% = и%> .

Вот пример. Сохраните код в файле erbdemo.erb. Обратите внимание, что файл Ruby будет иметь расширение .rb , а файл Embeded Ruby будет иметь расширение .erb .

<% page_title = "Demonstration of ERb" %>
<% salutation = "Dear programmer," %>
<html>
   <head>
      <title><%= page_title %></title>
   </head>
   <body>
      <p><%= salutation %></p>
      <p>This is an example of how ERb fills out a template.</p>
   </body>
</html>

Теперь запустите программу, используя утилиту командной строки erb.

c:\ruby\>erb erbdemo.erb

Это даст следующий результат —

<html>
   <head>
      <title>Demonstration of ERb</title>
   </head>
   <body>
      <p>Dear programmer,</p>
      <p>This is an example of how ERb fills out a template.</p>
   </body>
</html>

Что такое рельсы?

  • Чрезвычайно производительный фреймворк для веб-приложений.

  • Вы могли бы разработать веб-приложение по крайней мере в десять раз быстрее с Rails, чем с типичной средой Java.

  • Ruby-фреймворк с открытым исходным кодом для разработки поддерживаемых базой данных веб-приложений.

  • Ваш код и схема базы данных являются конфигурацией!

  • Фаза компиляции не требуется.

Чрезвычайно производительный фреймворк для веб-приложений.

Вы могли бы разработать веб-приложение по крайней мере в десять раз быстрее с Rails, чем с типичной средой Java.

Ruby-фреймворк с открытым исходным кодом для разработки поддерживаемых базой данных веб-приложений.

Ваш код и схема базы данных являются конфигурацией!

Фаза компиляции не требуется.

Full Stack Framework

  • Включает в себя все необходимое для создания веб-приложения на основе базы данных с использованием шаблона Model-View-Controller (MVC).

  • Быть полностью стековым фреймворком означает, что все уровни построены так, чтобы работать без проблем с меньшим количеством кода.

  • Требует меньше строк кода, чем другие фреймворки.

Включает в себя все необходимое для создания веб-приложения на основе базы данных с использованием шаблона Model-View-Controller (MVC).

Быть полностью стековым фреймворком означает, что все уровни построены так, чтобы работать без проблем с меньшим количеством кода.

Требует меньше строк кода, чем другие фреймворки.

Соглашение по конфигурации

  • Rails избегает файлов конфигурации в пользу соглашений, рефлексии и динамических расширений во время выполнения.

  • Код вашего приложения и работающая база данных уже содержат все, что нужно знать Rails!

Rails избегает файлов конфигурации в пользу соглашений, рефлексии и динамических расширений во время выполнения.

Код вашего приложения и работающая база данных уже содержат все, что нужно знать Rails!

Не повторяйся (СУХОЙ)

DRY — это слоган, который вы часто будете слышать о Ruby on Rails, что означает, что вам нужно кодировать поведение только один раз, и вам никогда не придется писать похожий код в двух разных местах. Это важно, потому что вы менее склонны совершать ошибки, изменяя свой код только в одном месте.

Сильные стороны рельсов

Rails содержит множество функций, которые делают вас более продуктивными, и многие из следующих функций опираются друг на друга.

Метапрограммирование — Другие фреймворки используют обширную генерацию кода с нуля. Методы метапрограммирования используют программы для написания программ. Ruby — один из лучших языков для метапрограммирования, и Rails хорошо использует эту возможность. Rails также использует генерацию кода, но гораздо больше полагается на метапрограммирование для тяжелой работы.

Active Record — Rails представляет платформу Active Record, которая сохраняет объекты в базе данных. Версия Active Record Rails обнаруживает столбцы в схеме базы данных и автоматически присоединяет их к объектам вашего домена с помощью метапрограммирования.

Соглашение о конфигурации. Большинство сред веб-разработки для .NET или Java вынуждают вас писать страницы кода конфигурации. Если вы следуете предлагаемым соглашениям об именах, Rails не требует особой настройки.

Scaffolding — вы часто создаете временный код на ранних стадиях разработки, чтобы помочь быстро запустить приложение и увидеть, как основные компоненты работают вместе. Rails автоматически создает большую часть необходимых вам лесов.

В основе Ajax — Ajax — это технология, ставшая стандартом для обеспечения интерактивности веб-сайтов без навязчивости. Ruby on Rails прекрасно поддерживает технологию Ajax и является частью основных библиотек. Поэтому, когда вы устанавливаете RoR, вам также доступна поддержка Ajax.

Встроенное тестирование — Rails создает простые автоматизированные тесты, которые затем можно расширять. Rails также предоставляет вспомогательный код, называемый жгутами и приспособлениями, которые облегчают написание и запуск тестовых примеров. Затем Ruby может выполнить все ваши автоматические тесты с помощью утилиты rake.

Три среды — Rails предоставляет три стандартные среды — разработку, тестирование и производство. Каждый ведет себя немного по-своему, что делает весь цикл разработки программного обеспечения проще. Например, Rails создает свежую копию базы данных Test для каждого запуска теста.

Что такое Rails 2.1.0?

Это последняя версия Ruby on Rails, выпущенная основной командой Rails в субботу 31 мая 2008 года.

Эта версия является дальнейшим улучшением RoR 2.0, который снова был действительно фантастическим релизом, абсолютно наполненным великолепными новыми функциями, множеством исправлений и невероятным количеством улучшения по сравнению с его предыдущими версиями RoR 1.2.x.

В этом руководстве рассматриваются все важные функции, доступные в последней версии RoR 2.1.0.

После этого урока вы сможете создать свой веб-сайт, используя одну из лучших технологий Web 2.0 под названием Ruby on Rails v2.1.0.