Самый простой способ использовать их, на мой взгляд, без проблем - записать маленькие CRC-карты в заголовки файлов, например:
///////////////////////
//* CRC CARD
//* Class: UISliderEvent
//* Responsability: Event that holds the value and id of a Slider's movement
//* Collaborators: UISlider, UIEvent
//////////////////////
Затем каждый раз, когда вам нужно добавить функцию, проверьте свою карту. и будьте уверены, что вы не нарушите ни один из контрактов, которые вы в нем указали. Например, внезапно, в зависимости от UIMouseEvent, его нет на Карте, поэтому нет необходимости его включать.
В файле стойки:
%w(rubygems rack sinatra).each { |dependency| require dependency }
disable :run
require 'myapp'
sessioned = Rack::Session::Pool.new(
Sinatra::Application,
:domain => 'example.com',
:expire_after => 60 * 60 * 24 * 365 # expire after 1 year
)
run sessioned
Для запуска запустите rackup app.ru
или используйте Passenger и т. Д. Это должно заключить ваше приложение в пул сеансов и включить его функциональность. Я не совсем понимаю, почему ему не нужно использовать , как большинству других промежуточных программ.
Поймите, я не тестировал это вообще, у меня еще не было чего-то, что требовало бы пулов сеансов. Я написал это из документации для Rack :: Session :: Pool, пример которой находится вверху страницы. Так что я тоже не могу сказать, как его использовать.
Синатра довольно силен, трюк из «Злой блохи» не сработал, но вот этот:
use Rack::Session::Pool, :domain => 'example.com', :expire_after => 60 * 60 * 24 * 365
Спасибо!