Skinny FrameworkはScalaに活用されるフルスタックWebアプリフレームワークです。環境設定の複雑さに手が出ないという声が多かったScalaにRuby on Railsのような簡単さを提げて誕生しました。この記事ではSkinny Frameworkを理解するために初心者でも分かる歴史、特徴、基礎知識などを簡単に解説していきます。
Skinny FrameworkとはSkinny Micro上に構築されたフルスタックWebアプリフレームワークです。Skinny(スキニー)と略称して呼ばれることが一般的でScala on Railsがコンセプトとなっております。それからも分かる通り、Ruby on Railsに強く影響を受けておりサーブレットベースのWebアプリ開発の持続可能な生産性を実現するために最適化されています。
Scalaとはスイス連邦工科大学のマーティン・オーダスキー氏によって2001年に設計されたJavaに影響を受けたオブジェクト指向と関数型言語の特徴を統合したプログラミング言語です。世に公開がされたのは2004年始めの頃でJavaプラットフォームにリリースされました。ScalaはJVM上で動作するため、Javaのライブラリを不自由なく使えるという特徴があります。
他にも.NET Framework上でも動作するため、同様に.NETライブラリも使用することが出来ます。(※.NETサポートは2012年に中止)2003年に誕生した比較的新しいプログラミング言語ですが、2019年に『GitHubPullRequest』によって発表されたプログラミング言語使用率ランキングによると第12位を記録するほどの人気度が伺えました。
日本国内でも様々な有名サービスがScalaを用いた開発を行っており、代表的なものとして『SmartNews』『Chatwork』などが挙げられます。
『Scalaにおけるシステム開発を簡単に行えるように用意された枠組みのこと』
ScalaフレームワークとはScalaにおけるシステム開発のプログラミングを効率的に実施するために汎用的な機能群をまとめ、システムの骨組みとなるテンプレートまで用意してくれる枠組みのことです。フレームワークを活用することでプログラミングにおける記述コードを最小限に抑えることが出来ます。Scalaフレームワークの代表的な種類として『PlayFramework』『Finatra』『Skinny Framework』などが挙げられます。
Scalaフレームワーク人気どころ6選ついて解説された記事はこちら>>
Skinny Frameworkの読み方は『スキニーフレームワーク 』です。名前の由来は”日本語で「好きに(すきに)」という音に似た言葉は、「好きなように」を意味します。これは冗談の半分ですが、Skinnyのコンセプトも表しています。”と公式サイトでも謳っております。
Skinny FrameworkはSkinny Micro上に構築されたフルスタックWebアプリフレームワークとして2013年9月に試作版がお披露目されました。キャッチコピーは『怖くないScala』です。2014年3月に最初の安定版バージョン1.0をリリース。
Scalaフレームワークにおいて人気を集めるPlay Frameworkと比べてもドキュメントが直感的で分かりやすいということなど評判が良いことから初回公表当初から注目を集めました。登場以来度重なるアップデートを繰り返し2020年10月現在の最新バージョンは『Scalatra3.0.3』となっております。簡単に以下の年表にまとめておりますのでご覧ください。
年代 | 内容 |
2013年9月 | Skinny Framework 試作版 発表 |
2014年3月 | Skinny Framework 1.0.0リリース |
2015年2月 | Skinny Framework 2.0.0リリース |
2016年7月 | Skinny Framework 2.2.0リリース |
2017年7月 | Skinny Framework 2.4.0リリース |
2018年7月 | Skinny Framework 3.0.0リリース |
2019年7月 | Skinny Framework 3.0.3リリース |
Skinny Frameworkの特徴を見ていきましょう。
Skinny Frameworkはフルスタックなフレームワークという特徴があります。ユーザインターフェース、データベース、セキュリティなどの全ての環境を用意しております。
Skinny FrameworkはRuby on Railsをモデルに開発されたという特徴があります。
Ruby on Railsの歴史、メリット、基礎知識などについて解説された記事はこちら>>
Skinny Frameworkは環境設定が手軽という特徴があります。Scala特有の環境設定、構築が複雑というイメージを払拭します。Ruby on Railsのように分かりやすいフレームワークとして誕生しました。
Skinny Framework以外のScalaによるシステム開発に用いられる代表的なフレームワークを紹介させていただきます。
FinatraとはTwitter社によって開発されたFinagleとTwitterServerの上にAPIサービスを簡単に構築するためのフレームワークです。Rubyのフレームワークである『Sinatra』をモデルに開発されており軽量Webフレームワークとなっております。高速でテスト可能であり、Twitter自社のサービスにも使われていることからScalaフレームワークとして高い注目を集めております。
Scalatraとはシンプルで簡単をテーマに開発されたWebマイクロフレームワークです。ScalatraはJVMのパワーとScalaの美しさと簡潔さを組み合わせ、高性能のWebサイトとAPIをすばやく構築が可能です。名称からも分かるようにRuby用のフレームワークであるSinatraをモデルに開発されました。
Play FrameworkとはJavaとScaraの2つのプログラミング言語でZenexity社のプログラマーギヨーム・ボルト(Guillaume Bort)氏によって開発されたオープンソースのWEBアプリケーションフレームワークです。Play FrameworkはRuby on Railsからの影響を強く受けたフレームワークとして有名です。その特徴として軽量で動きが速いという点が挙げられることから度々Webサービスの開発などにおいて好まれて利用されております。
Play Frameworkの公式サイトはこちら>>
Play Frameworkの歴史や特徴、基礎知識について解説された記事はこちら
Skinny Frameworkを理解するために初心者でも分かる歴史、特徴、基礎知識などを簡単に解説させていただきました。Skinny Frameworkを一言で表すと『Ruby on Railsをモデルに開発されたフルスタックなWebマイクロフレームワーク』です。Skinny Frameworkはフルスタックフレームワーク以外にも「ドキュメントが分かりやすい」「環境設定が手軽」などの特徴が挙げられます。Skinny FrameworkについてScalatraについてこの記事に書かれている最低限の内容は理解をしておくようにしましょう。