php開発者がフレームワークを使用するメリット・デメリット

phpで開発を行う上で、フレームワークを利用することがあります。

フレームワークにはそれぞれ特徴がありますが、フレームワーク自体の仕様を把握するまでに時間がかかることもあり、使用を避けるエンジニアが存在することも事実です。

そこで今回はphpを扱うエンジニアがフレームワークを使うメリットとデメリットについてまとめていきます。今後の開発作業の糧になれば幸いです。

メリット1:圧倒的なスピード

フレームワークを使うメリットは、何といってもその生産性です。

phpに限らずフレームワークの仕様事態を把握するのに多少の時間を要しますが、一度把握してしまえば、開発作業をかなり効率的に進めることができます。

フレームワークにはビジネスでよく使われる機能が標準で搭載されており、これをいかに有効に使うかが生産性アップのカギを握っているのです。

よって、標準搭載の機能を知れば知るほどに、わざわざビジネスロジックを書く必要性がなくなり、すでに動作内容が保証された機能を使うことでテスト工数の削減にも役立ちます。
圧倒的なスピード

メリット2:個性が薄まることによって保守性がアップ

フレームワークのもう一つのメリットは、「個人の色」を消してくれることでしょう。

一見デメリットにも見えますが、開発現場において汎用性が高く、保守性に優れたコードを書くことは非常に大切なことです。

最初の開発者がプロジェクトを離れたあとも機能は動き続けますから、後に誰かが手を加えるときに個人の「書き癖」が色濃く反映されていると、作業効率がダウンし不具合の温床になります。フレームワークはソースコードの書き方をある程度統一して定型化することで、このような問題を解決しているのです。

これはつまり信頼性の向上にもつながり、ビジネス用途では最も期待される要素の一つでしょう。どんなに短期間で開発され、パフォーマンスに優れた機能であっても、信頼性が低ければ実際のサービスでは使えませんからね。
個性が薄まることによって保守性がアップ

デメリット1:フレームワークの知識に偏ってしまう

開発スピードと保守性の向上というメリットの他に、フレームワークにはデメリットも存在しています。

その一つがフレームワークの知識に頼り切ってしまうということです。フレームワークの仕様を理解すると、その便利な機能の数々となんとなく使いこなすことができれば、それなりの機能を実現できてしまいます。

つまり、「処理の仕組みを理解しなくても、モノが作れる」という危険な状態に陥る可能性があるのです。エンジニアとしてこれはあまり良い状態とは言えませんよね。特に保守・運用フェーズに突入してしまうと、不具合原因の特定に時間がかかり、再現性確認や修正といった作業に支障をきたすことになるでしょう。

フレームワークを扱う上では、前提として「フレームワークを使わずとも機能を実現できる」ことが大切です。フレームワークなしで特定のロジックを実装できるけれど、より生産性を高めるためにあえてフレームワークを使うという使い方が適していることを忘れないようにしましょう。

デメリット2:カスタマイズしにくい

フレームワークのデメリットとして二つ目は、そのカスタマイズ性の低さです。

全ての処理がフレームワークに標準搭載されているような機能で実現できるわけではありません。実際の開発現場では、顧客の注文によりイレギュラーな処理を追加する必要もありますよね。

仮にその処理を実現できる機能がフレームワーク内に存在しない場合、結局は自らが一から処理を書く必要に迫られます。このような事態が頻発すると、そもそもフレームワークを使う必要性自体が薄れてしまうのです。

顧客要件を満たし、より優れた機能を実装するためにはフレームワークの知識だけでは不十分と言えるでしょう。

アサインナビ | assign navi(アサインナビ)

ページが見つかりません

指定されたURLのページは存在しません。
サイト更新などによってURLが変更になったか、URLが正しく入力されていない可能性があります。
ブラウザの再読込を行ってもこのページが表示される場合は、サイトマップまたはサイト内検索でお求めのページをお探しください。


日本最大級のITビジネスコミュニティ アサインナビ