PadrinoはRubyベースのWebアプリケーションフレームワークです。『Sinatra』にインスパイアされ、性能を保ちながらその利便性を高めたツールとして知られております。Sinatraでは採用していなかったMVCモデルを採用していることが特徴の一つです。この記事ではPadrinoを理解するために初心者でも分かる歴史、特徴などの基礎知識を簡単に解説していきます。
PadrinoとはRubyに活用されるネイサン・エスケナジ(Nathan Esquenazi)氏等によって開発されたオープンソースのWebアプリケーションフレームワークです。PadrinoはSinatraを参考に誕生し、Sinatraでは採用していなかったMVCモデルを採用しました。公式サイトにも『Padrinoは、Sinatra Webライブラリに基づいて構築されたRuby Webフレームワークです。』と掲げております。
そのテーマはSinatraを優れたものにする精神を守りつつ、より高度なWebアプリケーションを楽しく簡単にコーディング出来るようにとしております。特徴として小さくて速い、豊富な追加機能、初心者でも簡単に使えるなどが挙げられます。
Rubyとはまつもとゆきひろ氏によって1995年に開発されたオープンソースでオブジェクト指向のプログラミング言語です。日本人プログラマーのよって開発された言語として初めて国際電気標準会議(IEC)で国際規格に認証されました。2018年には米国において最も稼げる言語はRubyと言われるほど国内外問わず世界的にも注目を集めております。Rubyというその名称には『Perl(パール)に続ぐ』という意味が込められており6月宝石であるPerlの次月(7月)宝石のRuby(ルビー)という名称を採用することになりました。
Rubyの特徴は記述量が少なく、自由度が高い、そして何より『書くことが楽しい』と多くのプログラマーの方が口を揃えております。RubyはWebアプリケーションの開発に最も向いており代表的な開発事例としてGunosy、食べログ、価格.comなどが挙げられます。
SinatraとはRubyに活用されるブレイク・ミゼラニー(Blake Mizerany)氏によって開発されたオープンソースのオブジェクト指向Webアプリケーションフレームワークです。2007年に誕生し『最小限の労力でRubyでWebアプリケーションをすばやく作成するためのDSL』を掲げております。特徴として軽量フレームワークと言われており、提供している機能が必要最低限で小規模なウェブサイトの構築に向いております。またRuby on Railsとは対となる考え方で作成されているというのも特徴の一つです。Sinatraは世界的にも名だたる企業や団体に採用されており代表的なところではアップルBBC、LinkedeIn、スタンフォード大学、RedHatなどが挙げられます。
Padrinoの読み方は『パドリーノ』です。Padrinoという言葉はイタリア語であり、英語で表すと「Godfather」を意味するようです。PadrinoはSinatraに強くインスピレーションを受けていることから名前の由来についてもSinatraが映画俳優「フランク・シナトラ」の画像を使用されることが幾度かあり、これにちなんでいる可能性があります。
Padrinoはネイサン・エスケナジ氏等によってRubyベースのWebアプリケーションフレームワークとして開発され2009年に誕生しました。PadrinoはSinatraを参考に誕生し、Sinatraでは採用していなかったMVCモデルを採用しました。Sinatraに強いインスピレーションを受けていることからPadrinoという名称は「Godfather」を意味しており、ロゴについてもハットを被って葉巻を咥えるデザインを採用しております。
開発が開始されたのは2009年10月と言われております。当時は『Sinatra_more』というプロジェクト名だったそうです。github上に記録された履歴によると2010年1月にリリースされた「Padrino 0.6」が一番古いものとなっておりました。現在(2021年7月時点)では最新バージョンを「Padrino 0.15.1」としております。簡単に以下の年表にまとめておりますのでご覧ください。
年代 | 内容 |
2009年 | 「Padrino」誕生 |
2010年1月 | 「Padrino 0.6」リリース |
2011年7月 | 「Padrino 0.10.0」リリース |
2013年4月 | 「Padrino 0.11.1」リリース |
2014年2月 | 「Padrino 0.12.0」リリース |
2017年3月 | 「Padrino 0.14.0」リリース |
2021年4月 | 「Padrino 0.15.1」リリース |
Padrinoの特徴を見ていきましょう。
Padrinoは小さくて速いという特徴があります。軽量なコード記述を基本とし、追加機能が豊富に用意されております。Ruby開発にて軽量なフレームワークを選択したいときにオススメです。軽量のWebサービスから大規模なフルスタックWebアプリケーションまで、あらゆるサイズのプロジェクトのWeb開発に簡単に使用できます。
Padrinoは豊富な追加機能を持つという特徴があります。「メール配信機能」「テストの自動生成」「管理画面の自動生成」「基本的な国際化機能」など必要最低限の機能を取り揃えていたSinatraの上にこのような便利な機能が乗せることができ利便性が高いです。
Padrinoは初心者でも簡単に扱えるというメリットがあります。その理由として直感的にプログラムが記述できるということが挙げられます。Rubyプログラミング初心者が最初にフレームワークとしてもおすすめです。
Padrino以外のRubyによるシステム開発に用いられる代表的なフレームワークを紹介させていただきます。
Ruby on RailsとはRubyに活用されるデビッド・ハイネマイヤー・ハンソン(David Heinemeier Hansson)氏によって開発されたオープンソースWebアプリケーションフレームワークです。2004年7月に誕生し、基本理念を『同じことを繰り返さない』と掲げております。特徴としては基本理念の名の下同じソースコードを何度も記述しなくて良い効率よく実装するための仕様となっております。さらにデータベースを直感的に操作ができる機能が提供されており好評を集めております。Ruby on Railsの概念を参考に誕生したその他言語のフレームワークも多く存在しCakePHPもその一つとなっております。
Ruby on Railsの公式サイトはこちら>>
Ruby on Railsの歴史やできること、基礎知識について解説された記事はこちら>>
HanamiとはRubyに活用されるルカ・ギティ(Luca Guidi)氏によって開発されたWebアプリケーションフレームワークです。2017年4月に誕生をしMVCモデルを採用しております。以前は『Lotus』という名称を使っておりましたが、IBM社のソフトウェアブランドと被ってしまったことが理由となり現在の『Hanami』へと変更されました。特徴としてはレスポンスの速さ、メモリの消費を最小限に抑えるなどが挙げられます。
RamazeとはRubyに活用されるマイケル・フェリンガー(Michael Felinger)氏によって開発されたオープンソースWebアプリケーションフレームワークです。Ramazeは非常にシンプルで分かりやすいフレームワークで特徴としてはRubyの文法を忠実に使用しているということが挙げられます。また『KISS』と『POLS』というそれぞれの原則の組み合わせを取り入れております。シンプルでかつ自由度が高いフレームワークとして親しまれております。
Padrinoを理解するために初心者でも分かる歴史、特徴などの基礎知識を簡単に解説させていただきました。Padrinoを一言で表すと『RubyベースのSinatraにインスパイアされたWebアプリケーションフレームワーク』です。特徴として『小さくて速い』『豊富な機能追加』『初心者でも簡単』などが挙げられます。Padrinoについてこの記事に記載されている最低限の内容は理解しておくようにしましょう。