ソフトウェアフレームワーク

このサイトではコンピュータプログラミングにおけるフレームワークの役割と、各フレームワークの特徴について詳しく解説を行なうものである。

ソフトウェアフレームワークとは

ソフトウェアフレームワークとは、プログラム開発を行なう場合において、一般的な機能を持つ共通コードを用意することで特定の用途に特化したプログラムを組みやすくした抽象的概念であり、一般的には単にフレームワークと呼ばれている。プログラムを組む側は定義されたAPIを呼び出すことで、コードを簡略化して記述できることが利点として挙げられる。そのためシステム構築に必須な標準的あるいは低レベルの制御コードを設計者やプログラマが検討する必要を省き、機能実現により多くの時間を割くことを可能にし、ソフトウェア開発をしやすくすることを目指しているものである。

PRリンク1
タイヤ買取販売なら | ツーエル国際貿易
福山の美容院ならトップシェイプへ行こう!

ソフトウェアフレームワークの種類

一言でソフトウェアフレームワークと言っても、その目的に応じて様々なものが数多く存在し、その選択は容易ではない。一般的にかなりの雑多なコードやユーティリティコードが含まれているためであるが、全体としては特定の問題領域に注目した機能を提供している。例えば絵の絵画や音楽作成、機械CAD、プログラミング言語、コンパイラ、意思決定支援、WEBアプリケーションなど、その目的によって様々なソフトウェアフレームワークが用意されている。

主なソフトウェアフレームワーク一覧

  • BFC (en)
  • Component-based Scalable Logical Architecture (en) (CSLA)
  • Habanero.NET (en) (Habanero)
  • Java Native Interface (JNI)
  • Leonardi (en)
  • ActionScript Foundry (en)
  • Spring
  • JSF
  • Symfony
  • CodeIgniter
  • Rails
  • Zend Framework
  • Twisted
  • Google Web Toolkit (GWT)
  • liferay
PRリンク2
福山で女性専用エステサロンなら | ラヴィヴァーレ
池袋駅東口の風俗求人なら | よるジョブ

ソフトウェアフレームワークへの批判

ソフトウェアフレームワークは不必要なコードがサーバ上を占有していることから、システムを肥大化させるという批判もある。また複数のフレームワークで競合する部分や補い合う部分があり、APIも複雑に絡み合っているためでもある。ほかには、プログラム技術の他にフレームワークの使い方を学ぶ時間がかかるという主張もある。一方でフレームワークは一度学べば、次のプロジェクトからはより素早く完璧な応用が可能となることから、新たにフレームワークを学ぶ開発者も少なくない。選択したフレームワークが開発要件を満たさないと判明した場合や、そのフレームワークの開発・提供が打ち切られた場合などは、開発途中で別のフレームワークに移行して(場合によっては基本設計から)再開発する必要が発生するため、ソフトウェアフレームワークの選択はとても重要であると言える。

PRリンク3
福山の美容院でおススメは | アットキレイ

リンク集