技術情報

PHPフレームワークとは

PHPフレームワーク」について、「フレームワーク概要」と「主要なPHPフレームワーク」について紹介します。

PHPフレームワークを使ったオフショア開発は、こちらへ

フレームワーク概要

「フレームワーク」とは

フレームワークとは、「アプリケーションの土台であり基盤」です。

フレームワークは、アプリケーションに必須となる機能(データベース接続、認証機構実装、登録/編集/削除ページ作成基準など)を1つにまとめています。また、基本となる開発方針/開発スタイル/アプリケーション構成/コード規格なども定めます。

開発者は、フレームワークの規格/仕様に従い開発を行うことで、機械的に型にはまった開発が可能となります。迅速に、高品質なアプリケーションを開発できます。

フレームワークのメリット

  • 命名規則、ディレクトリ構成、コーディング記法などの規則が統一されているため、多人数開発/大規模開発に向いており、高品質を維持しやすい
  • 「コード再利用性が高い」「パッケージ/ライブラリを利用できる」など、効率的な開発が可能
  • 「フレームワークコア部分のセキュリティがメンテナンスされる」「セキュリティ関連ライブラリを利用できる」などで、セキュリティを高めることができる
  • フレームワークコア部分に先進的技術が取り込まれた場合、それを利用しやすい
  • 保守/運用も容易になる

フレームワークのデメリット

  • フレームワークの流儀から外れる機能/仕組みの実装が困難な場合がある
  • フレームワークを使いこなすための規約/手順などの習得用期間コストがかかる
  • フレームワークが開発停止状態となってしまう場合がある

 

主要なPHPフレームワーク紹介

「主要なPHPフレームワークの概要」と「詳細記事へのリンク」を紹介します。

FuelPHP

「PHP5」「フルスタックフレームワーク」「規約より設定」「MVC」「軽量高速」「セキュリティに強み」などの特徴があります。

「従来のフレームワークの問題を解決するフレームワーク」として期待されています。

PHPフレームワーク「FuelPHP」とは

Symfony

「MVC」「PHP5」「『Ruby on Rails』の利点を吸収」「オブジェクト指向開発」「部品の再利用性が高い」「リリーススケジュール(サポート期間)が安定」などの特徴があります。

「効率的なWebアプリケーション開発」と「効率的な保守」を目的としています。

PHPフレームワーク「Symfony」とは

CakePHP

「RAD型フレームワーク」「小/中規模開発に適正」「Rails流高速開発」「PHP4、PHP5両方で動作」「外部ライブラリを必要としない」などの特徴があります。

「Railsの高速開発」と「PHPの機動性」を兼ね備えたフレームワークといわれています。

PHPフレームワーク「CakePHP」とは

Codeigniter

「高速」「軽量」「シンプル」「低い学習コスト」「高い自由度」「MVC」「システム拡張が容易」などの特徴があります。

開発しやすく扱いやすいフレームワークとして、世界でトップクラスの人気を集めています。

PHPフレームワーク「Codeigniter」とは

Phalcon

「フルスタック」「最速フレームワーク」「省メモリ」「DI設計」などの特徴があります。

非常に高速に動作し、他のフレームワークを圧倒する「最速PHPフレームワーク」とされています。

PHPフレームワーク「Phalcon」とは

Zend framework

「オブジェクト指向」「PHP5」「MVC」「コード/文書/テストの厳格標準」「開発企業への信頼」などの特徴があります。

PHP5コア「Zend Engine 2」などを開発しているイスラエルの「Zend Technologies」社が中心となって開発しています。

PHPフレームワーク「Zend framework」とは

Slim

「マイクロフレームワーク」「小規模開発向き」「REST API」「多くの機能は標準搭載」などの特徴があります。

シンプルで使いやすくあることを追求しており、アジャイル開発の分野などでの開発効率を大幅に高めてくれるフレームワークです。

PHPフレームワーク「Slim」とは

Flight

「高速」「シンプル」「拡張可能」「イベントベース」「コンポーネント独立性」「View+Controllerフレームワーク」などの特徴があります。

拡張しやすいWebアプリケーションを開発できるマイクロフレームワークです。

PHPフレームワーク「Flight」とは

DietCake

「軽量」「高速動作」「低学習コスト」などの特徴があります。

「軽量フレームワーク」と「フルスタックフレームワーク」の間のような設計思想です。

PHPフレームワーク「DietCake」とは

Laravel

「MVC」「分かりやすく美しい構文」「規約より設定を優先」「新技術の取り込み」などの特徴があります。

「2014年における最有望PHPフレームワークの1つ」とされ、世界的に最も注目されているフレームワークとされています。

PHPフレームワーク「Laravel」とは

Yii

「高性能」「軽量」「高速」「MVC」「オブジェクト指向」「コンポーネントベース」「高度なキャッシュ機構」「高い開発生産性」などの特徴があります。

大規模/高負荷なアプリケーション開発に適しています。

PHPフレームワーク「Yii」とは

 

まとめ

フレームワークは、それぞれに特徴があり、強みと弱みがあります。存在しているフレームワークの数は非常に多く、フレームワーク選定は困難となりがちです。

システム要件/拡張性/開発規模などに合ったフレームワークを適切に選択する必要性は、近年さらに高まっています。

 

PHPフレームワークを使ったオフショア開発は、こちらへ

About the author: matsumoto