×
×

PHP フレームワークを利用しての開発〜未経験の為のPHPプログラミング講座〜

PHPでシステム開発するに当たりチーム開発やフリーランスの案件などでよく目にする「フレームワーク」を利用してのシステム開発ですが、今回はPHPのフレームワークについて触れてみたいと思います。

フレームワークとは?

フレームワークは、PHPでシステム開発するに当たりよく利用するであろうプログラムをあらかじめライブラリとして用意してくれています。

そのため開発の工数を大幅に削減できたり、数名でのチーム開発時のプログラミングコードにある程度の統一を持たせることができます。また、開発にたずさわった人材が離職した後、後任のプラグラマに引き継ぎやすいメリットがあります。

その逆で、デメリットとしてフレームワークを利用できるようになるためには学習コストがかかります。また、オープンソースならではの脆弱性が発見された場合の対処など、後々作業が発生してしまう可能性もあります。

PHPフレームワークの種類は

PHPフレームワークとしていくつか紹介します。

  • Laravel
  • CakePHP
  • Symfonyn

などが有名どころです。エンジニアとしての就職やフリーランスの案件で最近よく名にするのが「Laravel」ではないでしょうか?それ以前(数年前)までは「CakePHP」をよく目にしました。

求人情報のスキルとしてLaravelが利用されている例

例)スキルとして必要なレベル

以下は実際の求人情報に記載されている必要スキルや歓迎スキル、開発環境などです。

あると嬉しいスキルの補足

【歓迎するスキル・業務経験】 ・オブジェクト指向プログラミング、PHPフレームワーク(Laravel)を使っての開発経験はなくても問題ありません。 ・Unix/Linux系サーバーの構築経験 ・WordPress等のCMSを使ったカスタマイズ経験 ・Ajaxを利用したフロントエンド構築経験 ・テンプレートエンジン(Twig、Smarty)の利用経験 ・Unix/Linuxコマンドを使用した作業経験 ・シェルスクリプトまたはLinux設定ファイルの変更作業経験(cron等の記述経験) ・バージョン管理ツール(Git、Subversionなど)の使用経験 PHP(Laravelなどフレームワーク含む)を用いた開発

月給35万円 ~ 60万円 大阪府大阪市北区 正社員(中途)の求人情報

開発環境

※よく使う環境例 フロントエンド:Typescript サーバサイド:Rails or Spring Boot or Laravel DB:MySQL インフラ:AWS その他:Git/GitHub, CircleCI, Slack, Redmine

年収360万円 ~ 800万円 神奈川県藤沢市 正社員(中途)の求人情報

【プロジェクト例】

■Webサービス提供会社 ・大規模ECサイトのシステム開発・設計 ・Angularでの一般ユーザ向け画面開発・設計 ・PHP(Laravel)でのAPI開発・設計 ・API Geteway、Cognito、EC2、CloudFront、S3、RDSなどAWS関連の環境構築・設定

年収400万円 ~ 700万円 東京都千代田区 正社員(中途)の求人情報

Laravelはどんなフレームワークか

Laravelの最新バージョンは現在7.xが最新のようです。

http://laravel.jp

Laravelを利用することにより、データベースへの接続や、フォームのバリデーションなどを簡単に実装できます。ただし、簡単といっても、Laravelのクラスやメソッド・プロパティ、記述方法などを覚えるか、調べて記述できる必要があります。

クラスやメソッド・プロパティ、記述方法に「決まり事」があるので記述するプログラマが複数にいてもほぼ同じクオリティーのソースコードを作成することができます。

created by Rinker
PHPフレームワーク
『PHPフレームワークLaravel入門』(青本)を読み終わった方にお勧め!「もっと知りたかったこと」を本書で詳細に解説!PHPでWebアプリケーションを開発するフレームワークには種々ありますが、圧倒的人気ナンバーワンはLaravel!本書は、2017年9月刊行の大好評『PHPフレームワークLaravel入門』を補足する続編。読者の「これも知りたかった!」という声に応えました!
created by Rinker
PHPフレームワークのロングセラー定番解説書が、新バージョン対応で改訂! 本書は、Laravelのインストールから、フレームワークの中心になるModel-View-Controller(MVC)の使い方、開発に役立つ各種機能をわかりやすく解説した入門書です。

フレームワークと並んで求められるスキル「WordPress」

WordPressは高機能なオープンソースのブログシステムです。WordPressはPHPで書かれているので、プログラムを書き換えることにより機能を追加したり、修正したりすることもできます。

また、インストールも容易なので、導入コストもやすく高機能かつテンプレートを利用することである程度のデザイン性も担保することができます。

created by Rinker
本書では、はじめてWebサイトを作る人に向けて、WordPressの機能と操作方法、公式テーマの使い方を中心に解説しています。実際に手を動かしながら本書を読み進めることによって、「WordPressでできること」をより理解し、活用することができるでしょう。
created by Rinker
WordPress5.X+Gutenberg(グーテンベルク)対応知識ゼロから自分のホームページを作るための超入門書「WordPressを使って会社やお店のホームページを作りたい」「でも専門知識もないし、何から始めればいいのかわからない」本書はそんな方々に最適なWordPressの入門書です。

WordPressでは前述のデザインテンプレートを自作することも可能です。

Webサイト制作会社でもこの「WordPress」を利用してWebサイトを制作しているところが多数あります。
ただし、「WordPress」もオープンソースであるため脆弱性の悪用によりサイトを乗っ取られたり、サーバーに悪意のあるコードを流し込まれたりするデメリットもあります。

この脆弱性に対応するためにバージョンアップを繰り返していますが、一定のバージョン以上になるとPHPやMySQLの必要バージョンが上がり、利用中のサーバーでは対応しないなどといった問題も出てきます。
この場合は、サーバー関連の知識も必要となってきます。

フレームワークは利用するべきか?

フレームワークの利用の有無は会社や個人の判断によります。
知っていて損はないと思いますが、常に知識のバージョンアップも必要となります。

また、フレームワークやWordPressを利用すからプログラミングの知識が不要かというと全くそうではありません。利用しているクラスなどがどのような処理をしているのかソースコードをみて理解できるくらいの知識は持っておいた方が無難です。

created by Rinker
PHP7の基本構文から、クラス、DB連携、セキュリティ対策まで、しっかり習得! PHPプログラミングの標準教科書『独習PHP』が、最新のPHP7に対応。PHPでWebページ/アプリケーションを開発する際に必要な基礎的な知識、PHPの基本構文から、クラス、データベース連携、セキュリティまで、詳細かつ丁寧に解説します。
created by Rinker
時間がなくたって、プログラミングは学べます。学習を躊躇していた人たちに、既存の入門書で挫折した人たちに、「これならできる!」の最短カリキュラムを、土日の14時間で提供。まったくのプログラミング初心者が簡単なWebデータベースアプリを構築できるまでの成長コースを、手取り足取り、導きます。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)