Прежде чем мы начнем ездить по 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»
# The Hello Class class Hello def initialize( name ) @name = name.capitalize end def salute puts "Hello #{@name}!" end end # Create a new object h = Hello.new("Ruby") # Output "Hello Ruby!" h.salute
Вывод — это даст следующий результат —
Hello Ruby!
Встроенный рубин
Ruby предоставляет программу ERB (Embedded Ruby), написанную Seki Masatoshi . ERB позволяет помещать коды Ruby в файл HTML. ERB читает слово в слово, а затем в определенный момент, когда он встречает код Ruby, встроенный в документ, он начинает выполнять код Ruby.
Вам нужно знать только две вещи, чтобы подготовить документ ERB —
-
Если вы хотите, чтобы какой-нибудь код на Ruby был выполнен, заключите его между <% и %>.
-
Если вы хотите, чтобы результат выполнения кода был распечатан как часть вывода, заключите код между <% = и %> .
Если вы хотите, чтобы какой-нибудь код на Ruby был выполнен, заключите его между <% и %>.
Если вы хотите, чтобы результат выполнения кода был распечатан как часть вывода, заключите код между <% = и %> .
Вот пример. Сохраните код в файле erbdemo.rb. Обратите внимание, что файл Ruby будет иметь расширение .rb —
<% 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 .
tp> erb erbdemo.rb
Это даст следующий результат —
<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>
Что такое рельсы?
-
Чрезвычайно производительный фреймворк для веб-приложений.
-
Написано в Ruby Дэвидом Хейнемайером Ханссоном.
-
Вы могли бы разработать веб-приложение как минимум в десять раз быстрее с Rails, чем с типичной средой Java.
-
Ruby-фреймворк с открытым исходным кодом для разработки поддерживаемых базой данных веб-приложений.
-
Настройте свой код с помощью схемы базы данных.
-
Фаза компиляции не требуется.
Чрезвычайно производительный фреймворк для веб-приложений.
Написано в Ruby Дэвидом Хейнемайером Ханссоном.
Вы могли бы разработать веб-приложение как минимум в десять раз быстрее с Rails, чем с типичной средой Java.
Ruby-фреймворк с открытым исходным кодом для разработки поддерживаемых базой данных веб-приложений.
Настройте свой код с помощью схемы базы данных.
Фаза компиляции не требуется.
Full Stack Framework
-
Включает все необходимое для создания веб-приложения на основе базы данных с использованием шаблона Model-View-Controller.
-
Быть полностью стековым фреймворком означает, что все слои построены так, чтобы работать без проблем с меньшим количеством кода.
-
Требует меньше строк кода, чем другие фреймворки.
Включает все необходимое для создания веб-приложения на основе базы данных с использованием шаблона Model-View-Controller.
Быть полностью стековым фреймворком означает, что все слои построены так, чтобы работать без проблем с меньшим количеством кода.
Требует меньше строк кода, чем другие фреймворки.
Соглашение по конфигурации
-
Rails избегает файлов конфигурации в пользу соглашений, рефлексии и динамических расширений среды выполнения.
-
Код вашего приложения и работающая база данных уже содержат все, что нужно знать Rails!
Rails избегает файлов конфигурации в пользу соглашений, рефлексии и динамических расширений среды выполнения.
Код вашего приложения и работающая база данных уже содержат все, что нужно знать Rails!
Сильные стороны рельсов
Rails содержит множество функций, которые делают вас более продуктивными, и многие из следующих функций опираются друг на друга.
Метапрограммирование
Там, где другие фреймворки используют обширную генерацию кода с нуля, Rail Framework использует методы метапрограммирования для написания программ. Ruby — один из лучших языков для метапрограммирования, и Rails хорошо использует эту возможность. Rails также использует генерацию кода, но гораздо больше полагается на метапрограммирование для тяжелой работы.
Активная запись
Rails представляет платформу Active Record, которая сохраняет объекты в базу данных. Версия Active Record Rails обнаруживает столбцы в схеме базы данных и автоматически присоединяет их к объектам вашего домена с помощью метапрограммирования.
Соглашение по конфигурации
Большинство сред веб-разработки для .NET или Java вынуждают вас писать страницы кода конфигурации. Если вы следуете предлагаемым соглашениям об именах, Rails не требует особой настройки.
подмости
Вы часто создаете временный код на ранних стадиях разработки, чтобы помочь быстро запустить приложение и увидеть, как основные компоненты работают вместе. Rails автоматически создает большую часть необходимых вам лесов.
Встроенное тестирование
Rails создает простые автоматизированные тесты, которые затем можно расширять. Rails также предоставляет вспомогательный код, называемый жгутами и приспособлениями, которые облегчают написание и запуск тестовых примеров. Затем Ruby может выполнить все ваши автоматические тесты с помощью утилиты rake.
Три среды
Rails предоставляет вам три среды по умолчанию: разработка, тестирование и производство. Каждый ведет себя немного по-своему, что делает весь цикл разработки программного обеспечения проще. Например, Rails создает свежую копию базы данных Test для каждого запуска теста.