Архитектура является базовым навыком для разработчиков программного обеспечения. Может быть несколько редких случаев, когда могло бы иметь смысл для архитектора не кодировать, но я не могу вспомнить никогда обнаружение с такими случаями в моем собственном опыте.
архитектор должен или кодировать на проекте или как минимум, быть полностью способен к кодированию на проекте. Вторая часть этого означает, что они должны смочь кодировать использование инструментов и методов, используемых остальной частью команды. (Не продолжая кодировать, должно быть очень трудно поддержать эти навыки.)
Наконец, когда архитекторы ответственны за выбор инструментов и методов, которые будут использоваться другими, они не могут сделать такой выбор хорошо, на самом деле не используя предложенные инструменты. В этом сценарии архитектор некодирования быстро ухудшается в заостренного волосатого босса с грудой брошюр по его столу.
Вы можете использовать Sinatra для очень быстрого написания небольших специализированных веб-приложений и легких служб REST.
В документации раздел они выделяют пару видеороликов по этому поводу:
Адам Виггинс и Блейк Мизерани представляют Синатру и RestClient на RubyConf 2008 . Доклад подробно описывает основную философию Синатры и размышляет об использовании Sinatra для создания приложений реального мира.
Адам Киз и прагматичные программисты начали серию скринкастов о Sinatra. Первые два эпизода посвящены созданию крошечного веб-приложения и созданию службы REST. 5 долларов за штуку.
Вы также можете использовать рельсы , но это немного перебор ...
Я тоже использую Sinatra для разработки простых решений REST.
Дело в том, что Sinatra очень гибкий во многих отношениях. Вы можете построить структуру своего проекта так, как вам больше нравится. Обычно у нас есть каталоги lib / tmp / и public /, а также файлы config.ru и app.rb, но, как я сказал, вы можете создавать все, что захотите.
Следует помнить, что Sinatra не является обычным MVC только потому, что de M (модель). Чтобы использовать sinatra для простых веб-приложений CRUD, вам нужно просто загрузить драгоценный камень.
требуется 'datamapper'
или другой вариант на ваш выбор, например sqlite, продолжение, ActiveRecord, ...
и вуаля, у вас есть ORM под вашим Sinatra.
В Sinatra вы определяете маршруты, которые подчиняются четырем основным предложениям GET, PUT POST и DELETE.
require 'rubygems'
require 'sinatra'
get '/' do
erb :home
end
get '/API/*' do
api = params[:splat]
@command_test = api[0]
@command_helo = api[1]
#...
def do_things(with_it)
#...
end
#...
end
__END__
@@home
helo
Итак, вы поняли идею: )
Наконец. Изучение Sinatra - не пустая трата времени, потому что оно простое и дает (мне) основы того, что такое веб-программирование. Я думаю, что в ближайшем будущем можно будет «внедрить» приложения Sinatra (Rack Apps) в проект Rails 3.
Загляните в github, там вы найдете множество проектов, созданных с помощью Sinatra. Для дальнейшего чтения посетите страницу Sinatra :: Base.