Статьи

7 вещей, которые я люблю в Синатре

Впервые я услышал о Синатре пару лет назад и с тех пор влюбляюсь в нее. Для тех, кто не слышал об этом, Sinatra — это DSL, который используется для создания веб-приложений. Он написан на Ruby и изначально разрабатывался Blake Mizerany, но теперь есть основная команда, которая поддерживает и разрабатывает код. Если вам интересно, он назван в честь Фрэнка Синатры, по-видимому, за

столько класса он заслуживает веб-фреймворка, названного его именем.

Вот семь причин, почему я так люблю Синатру:

Простота

Вы можете создать полнофункциональное веб-приложение, используя Sinatra, всего в одном файле. Нет никаких сложных процедур настройки, настройки или генераторов, о которых нужно беспокоиться: вы можете просто открыть текстовый редактор и начать взламывать. Маршруты просты в реализации и имеют отличный синтаксис, который использует все глаголы Http GET, POST, PUT и DELETE; сделать это легко для создания приложений RESTful. Упрощенно, Sinatra позволяет вам писать простой, но элегантный код, который дает потрясающие результаты.

гибкость

Sinatra может использоваться для создания чего угодно, от самых маленьких микросайтов до полнофункционального веб-приложения. Это идеальный выбор для реализации API, Middleware, виджетов, приложений Facebook и многих других. Я часто использую его, чтобы просто опробовать новые идеи или быстро создать прототип сайта.

Sinatra построен на основе Rack, что позволяет легко расширять его с помощью Ruby Gems, Rack-Middleware и собственного API расширения. Это открывает целый мир возможностей для расширения вашего приложения и избавляет вас от необходимости заново изобретать колесо.

Это легкий

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

беспристрастный

Вам не нужно использовать парадигму MVC, и вы не привязаны к какому-либо конкретному ORM (Active Record, Sequel, Mongoid и т. Д.), Инфраструктуре JavaScript (JQuery, MooTools, YUI и т. Д.) Или системе шаблонов (Haml, ERB, Slim и т. Д.). ). Это возвращает вас, разработчика, на место водителя, предоставляя вам полный контроль над тем, как наилучшим образом реализовать ваше приложение. Это может заставить разработку на Синатре временами казаться Диким Западом и, конечно, может привести к плохому коду… но, по крайней мере, это ваш плохой код!

Это помогает увеличить ваш уровень владения Ruby

Все в Sinatra — это просто код на Ruby, так что вы получаете много практики при написании кода своего приложения. Поскольку в фоновом режиме происходит меньше «магии», вам часто приходится выяснять, как реализовать определенные типы функций самостоятельно. Это не обязательно плохо — всегда есть кто-то, кто готов помочь (см. Пункт 6). И у Sinatra нет своего собственного «стиля кодирования», как у Rails, все гораздо больше в традиционном стиле Ruby. Исходный код Синатры весит чуть более 1500 строк хорошо документированного кода, что означает, что вы можете легко прочитать его самостоятельно. Это ясно, кратко и содержит несколько отличных примеров хорошей практики программирования на Ruby.

Сообщество удивительно

Синатра имеет дружелюбное и энергичное сообщество, которые всегда рады помочь. Документы на официальном сайте также имеют большое значение. Если вы застряли, вы всегда можете зайти в группу Google или найти кого-то на канале irc (#sinatrarb).

Это весело!

Это самый важный момент — Синатра позволяет мне просто наслаждаться игрой с кодом. Я могу быстро опробовать новые идеи или поэкспериментировать с различными методологиями без каких-либо серьезных накладных расходов. Мне не нужно следовать никаким руководящим принципам или правилам, я могу просто пойти своим путем и запустить что-то в кратчайшие сроки, а затем наслаждаться взломом этого до конца дня!

Ваше первое свидание с Синатрой

Все, что вам нужно сделать, это установить гем Синатры:

 $> gem install sinatra 

Затем откройте текстовый редактор и введите следующие 2 строки:

  
require "sinatra"
get("/") { "Hello World!" }

И это ваше приложение — правильно, всего 2 строчки! Все, что вам нужно сделать сейчас, это запустить сервер. Откройте терминал и введите в командной строке следующее:

  $> ruby hello_world.rb 

Ваше первое приложение Sinatra можно найти по адресу http: // localhost: 4567 . Идите и поиграйте… вы влюбитесь в мгновение ока!