system
大橋 俊昭

2015.4.3システム開発 ディレクション 

代表取締役

大橋 俊昭

今後の「Javaフレームワーク」を考えてみよう!!

大変ご無沙汰しておりました、プロジェクトマネージャの大橋です。
ずっと「冬篭り」していましたが、春を迎え「再スタート」していきます。

早速ですが、「Javaフレームワーク」について、考えていきましょう!!

ハヤリ/スタリを繰り返し、永久に利用可能なフレームワークは存在することは
ありません。時代に合致したものを選定し、開発エンジニアは継続的に技術習熟
に努めなければいけません。だからこそ、腕の見せ所なのかも知れませんね。

主要なフレームワークのトレンドを調べてみよう!!

「Googleトレンド」で「人気度の動向」という観点からフレームワークのトレンド
を調べた結果です。

20150403_01

Apache Struts」「Spring Framework」「Play Framework」いずれもブレークした
フレームワークばかりですが、時代と共に変化が見受けられます。

Apache Struts

「Apache Software Foundation」により公開されているオープンソースソフトウェア
であり、MVCモデルにてWebアプリケーションを構築することが可能。J2EEベースでの
開発が可能であり、サーブレット育ちの開発エンジニアには、とても魅力的でした。

企業の基幹システムを担うことも多く、現在でも現役続行中のフレームワークですね。
ただ、既にEOLを迎えており、フレームワーク自体に致命的な脆弱性が発見された場合、
自分達でフレームワークを修正していかなければなりません。

脱Struts」というキーワードが溢れていますが、そう簡単ではありません。

対応策として「NTTデータ」から提供されている「TERASOLUNAフレームワーク」を利用
する方法があります。脆弱性(CVE-2015-0899)に対応した「バージョン2.0.5.3」を
利用すれば延命することはできますよね。さらに「HTML5」対応を施したカスタマイズ
を実現すれば、いままでのノウハウを有効活用することも可能だと考えています。

Spring Framework

こちらもオープンソースソフトウェアであり、DIコンテナを基盤としたJ2EEベースでの
Webアプリケーション開発用のフレームワークです。機能が多数装備されているが故に、
当初、習熟までに時間を要するという印象でしたが、必要機能のみ導入することも可能
であり「使う機能はいつも一緒」という記憶があります。

「Apache Struts」同様に現役続行中のフレームワークです。こちらは、もうしばらくは
利用され続けられると思いますね。

機能が盛り沢山の「Spring Framework」ではなく、軽量フレームワークを選定したい場合、
Spring Boot」という必要最小限のモジュールにて構成されたフレームワークも登場して
いますので、機会があれば活用してみるのも良いでしょう。

Play Framework

アジャイル開発に向けて生まれ「Ruby on Rails」の哲学を吸収したフレームワークです。
このフレームワークは「J2EEベース」ではありません。これにはビックリですよね。

実際に触れてみました。とても混乱しました。そのはずですよ、J2EEが使えない訳なので。

さらに「Java言語」と「Scala言語」の両方を使いこなすことが前提となるソフトウェア
でもあります。習熟すればスクリプト言語のような感覚で開発可能。さすが、アジャイル
開発のために誕生したフレームワークと言えます。

今後を考えると

TERASOLUNAフレームワーク」がEOLを迎えるまでは「Apache Struts」を利用する選択肢
はあると考えています。やはり、基幹システムはJ2EEベースのJavaフレームワークによる
開発がベターだと感じます。

ただ、EOLを迎えた後「Spring Boot」等の新たな選択肢はないと考えています。その時は、
やはり、アジャイル開発向けのフレームワークを選択すると思います。さらに続けると、
「Java」ではなく「PHP」等のスクリプト言語に加えて「HTML5」+「Java Script」ベース
による開発手法へ切り替えていくことになるでしょう!!<つづく>

ホームページ制作サービスはこちら

その他の記事

ページTOPへ