Javaの Web フレームワークで有名な Spring と Play について調べてみました.

Spring

Spring Framework - Wikipedia

  • DIとAOP(アスペクト指向)を中核とした豊富な機能.
  • 効率的に複雑なアプリケーションを作成するのに必要な機能を提供
  • ドキュメントも豊富.
  • OSSとしての歴史も長い, 実績あり.

Spring Boot

  • 複雑で豊富なSpring Frameworkを結合したもの.

参考:

Play

Play Framework - Wikipedia

  • 小規模な開発に向いている.
  • 導入が簡単なことや機能がシンプル.
  • Ruby on RailsとDjangoから大きな影響を受けた Scalaでかかれている.
  • Play Frameworkを導入したデフォルトの状態で開発に必要なツールはほとんどそろっている
  • 開発スピードを重視する企業やJava以外の開発者を中心に人気.
  • Spring Frameworkと比較すると実績が少なめ.
  • 生産性に注目し、RESTfulアーキテクチャを目指して開発.
  • ソースの変更時にコンパイルやサーバーの再起動が不要.
  • JSONライブラリ内臓.(jackson/jerkson).

両者の比較

両者をマトリックスで比較してみた.

             Spring    Play

実績 2002 ~ 2007 ~ 開発規模 中−大 小−中 ドキュメント 豊富
コード量 軽量 生産性 高い

まとめ

中規模開発で実績重視ならば、Spring

小規模で素早く開発をするならば、Play

といったところだろうか.

Special Thanks

Javaの Web フレームワークで有名な Spring と Play について調べてみました.