シナトラをうまく使いましたか? それはどのようなプロジェクトでしたか?Rails や Merb の代わりに Sinatra を使用することをお勧めする状況は?
8 に答える
私はシナトラに手を出したことがありますが、それについて深刻なことは何も書いていません。あなたが上で言ったように、http://www.sinatrarb.com/wild.htmlにリストがありますが、そこにリストされているアプリケーションの多くは GitHub ページにリンクしているようです。結果オンライン。また、いくつかの興味深いプロジェクトへのリンクを見つけることができるSinatra メーリング リストもあります。[*]
いつ Sinatra を使用するかという質問については、個人的には「小規模なプロジェクトの場合」と答えます。何かをすぐに起動して実行したい場合は、Sinatra が優れた選択肢のようです。Rubyが好きな人にも最適です。つまり、Rails で何かを行うときは、"The Rails Way" を実行する必要があります。Rails は、その上にあるフレームワークです。アプリケーションを構築していて、その慣習と慣習に従う必要があります。一方、シナトラは図書館のように感じます。Rubyを書いているような気分で、データベースに接続したいなら自分の好きな/仕事に適していると思うライブラリを使い、HTMLを出力したいなら好きなテンプレートライブラリを選び、必要ならシンプルな Web フレームワークである場合は、Sinatra を選択します。Sinatra は、アプリケーション全体を構築するためのものではなく、アプリケーションの残りの部分と一緒に使用するものです。
お気づきかもしれませんが、私は Sinatra が大好きで、個人的な (または小規模な) プロジェクトに使用します。何をしているのかを知っている限り、セットアップも使用も簡単です。http://www.sinatrarb.com/wild.htmlを見ると、ほとんどの人がそれを使用しているようです。たとえばIs Lost on yet?を参照してください。とカレンダー アバウト ナッシング。
[*]編集:ここにスレッドがあり、人々が自分のプロジェクトにリンクしています。大きいプロジェクトと小さいプロジェクトの両方があるようです。非常に興味深いもの。
sinatra はマイクロ アプリケーションの開発に最適だと思います (大きな驚きではありません。これはマイクロ フレームワークです)。
Sinatra は、必要なほとんどすべてをすばやく構築するのに十分なレベルの抽象化を提供します。sinatra について私が気に入っているのは、フレームワークがアプリの実際の動作を厳密に制御できることです。自分が書いていることを実際に「感じる」ことができます。ですから、シナトラは微妙にバランスのとれたフレームワークだと思います。
シナトラは先ほども言ったように「Rubyを書くのが好きな人」にも魅力的だと思います。sinatra インターフェースを実装する前に、Ruby クラスを書き始めます。(この種のワークフローの良い例: http://dev-logger.blogspot.com/2009/01/ric-rac-roe-in-soup-of-technologies.html )
Sinatra で書かれたTweepDiff ( http://tweepdiff.com ) をリリースしました。他のものはやり過ぎだったでしょうが、私はより大きなプロジェクトにも Sinatra を使用します。
http://www.sinatrarb.com/wild.htmlにリストがあります。
それでも、もう少し彼らのことを聞きたいです。また、このリスト以外にも成功したシナトラ プロジェクトはたくさんあると思います。
Web サーバーから自己完結型の簡潔な Ruby スクリプトを実行できるようにしたいと考えていました。機能に関しては、CGI ライブラリに似ています。シナトラは完璧だった。後で 1 つのシナトラ アプリと単純なシナトラ スタイルのルートを介してアクセスするスクリプトのコレクションがあります。
データベースに依存しない Web アプリケーションを作成する必要があるときはいつでも、sinatra が私の最初の寄港地になると思います。
上記のコメントのほとんどをエコーする必要があります。現在、データの閲覧と基本的なレポートのためにSinatra/HAMLスタックを実装しています。
シンプルさとRubyへの直接接続の組み合わせが本当に好きです。ブラウザで何かが機能していない場合は、デバッグのためにそれをストレートのRubyプログラムに移植するのは非常に簡単です。
シナトラで犬小屋を建てる感覚と、レールでタージマハルを建てる感覚は間違いなくあります。理解するのは簡単です(MVCとRailsの必要性を理解するのにも役立ちます)。
全体として非常にクールなもので、非常に高速です。私はまだそれを強調していないので、それが現実の世界でどれほどうまく機能するかは言えません。
I made http://istay.com using sinatra, all I can say is that it is a fantastic little framework for any site that doesn't directly use or doesn't have a database.
Though I do feel sinatra has reach it's limit with the current site, and any extensions will be written using Rails or other framework.
私は小さな「1 つの機能」の種類のアプリに Sinatra を使用しています (私の現在のブログ エンジンは良い例かもしれません)。Sinatra のシンプルさは、小さなユーティリティや基本的な API フロントエンド (Twitter アプリなど) に最適だと思います。
大規模なアプリには、Sinatra ベースのPadrino Frameworkもあり、通常は Rails が提供するいくつかの優れた機能を備えています。