Статьи

10 потрясающих технологий Ruby on Rails, чтобы вы начали

В последние несколько лет Rails, казалось бы, поджег мир веб-разработки. Популярные веб-приложения, такие как Basecamp и Twitter , выдвинули Rails в центр внимания как отличную среду, которую любой программист (или даже не программист) может быстро использовать для создания приложений.

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

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

  • TODO — используется для отображения кода, который является неполным или требует некоторой работы
  • FIXME — используется для отображения кода, который поврежден или содержит ошибки
  • ОПТИМИЗАЦИЯ — Используется там, где необходимо провести дальнейшую оптимизацию.

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

1
2
3
4
5
rake notes
app/controllers/contacts_controller.rb:
  * [ 3] [TODO] factor out model verification to a filter
  * [ 4] [OPTIMIZE] optimize this
  * [ 5] [FIXME] it’s broken

Идеально подходит для поиска тех мелочей, которые нуждаются в некотором TLC в вашем коде.


Фото от alpha_du_centuare

Когда ваши Rails-приложения станут более сложными, вы начнете замечать, что некоторым процессам может потребоваться чуть больше TLC с точки зрения оптимизации. Чтобы найти эти маленькие ошибки и ошибки в вашем коде, попробуйте использовать отличный RPM-пакет Relic для мониторинга ваших приложений. Relic RPM дает вам возможность отслеживать все процессы вашего приложения, а также дает вам визуальные графики и другую полезную информацию, чтобы действительно понять процессы, которые вызывают медлительность в вашем приложении.

Блог RailsTips содержит отличный обзор RPM Relic . Аналитика незаменима для разработки успешных и эффективных приложений Rails.


Фото от Шлема13

ActiveRecord — это удобный механизм сохранения, который позволяет вам делать много интересных вещей с помощью данных и логики. Одна из действительно удобных вещей, которую позволяет ActiveRecord, — это группировать несколько вставок в одной транзакции. Дзен и искусство вычислений дают превосходный пример этой техники.

Вместо того:

1
2
3
my_collection.each do |q|
  Quote.create({:phrase => q})
end

Использование:

1
2
3
4
5
Quote.transaction do
 my_collection.each do |q|
   Quote.create({:phrase => q})
 end
end

или для отката всей транзакции в случае сбоя вставки используйте:

1
2
3
4
5
6
Quote.transaction do
 my_collection.each do |q|
   quote = Quote.new({:phrase => q})
   quote.save!
 end
end

Фото Wonderlane

Одним из невероятно полезных аспектов Rails является встроенная поддержка интеграции Javascript и AJAX. Они даже включают шаблонный язык для Javascript, называемый шаблонами RJS . RJS позволяет программисту легко обновлять несколько элементов страницы с помощью AJAX.

Чтобы продвинуть пример дальше, вы можете использовать RJS для перебора элементов страницы и динамического изменения их с помощью AJAX. Вы даже можете изменить элементы на странице с помощью запросов CSS. Например, вы можете сделать что-то вроде:

1
page.select(‘#cssid li’).each { |item|

Отличная, а? Просеивание элементов может быть невероятно мощным для использования внутри интерфейса вашего приложения.

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

«Если у вас есть данные, которые не меняются при перезапуске приложения, кэшируйте их где-нибудь в константе. Например, у вас может быть файл YAML или XML в / config, в котором хранятся данные конфигурации приложения, и вы можете загрузить их в константу в environment.rb, делая поиск быстрым и легким для всего приложения. «


Фото от flydime

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

Джей Филдс знает, что освоить Rails нелегко. На самом деле он продолжает говорить следующее:

«Скринкасты и картинки не лгут. Легко выучить Rails и быстро стать продуктивным. Однако маленький грязный секрет заключается в том, что очень трудно быть экспертом в использовании Rails.

«Rails предоставляет множество помощников, которые облегчают вашу жизнь. Но вы не можете полностью скрыть тот факт, что вам нужно хорошо разбираться в Ruby, JavaScript, YAML и SQL. Так же, как Rails, начинайте с любого из вышеперечисленного Языки просты, их освоение требует времени и усилий.

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

Это действительно хорошее практическое правило практически для любого языка, и хорошо помнить, если вы только начинаете работать с Rails. Перемещение Javascript включает в нижней части шаблона (прямо перед