LoginSignup
0
0

PHPのFWの一つ、Laravelを勉強してみた

Last updated at Posted at 2023-12-16

当記事は絶対に挫折させないアプリ開発 はじめてのLaravel(https://booth.pm/ja/items/1054217)
のメモ書きですのでオリジナリティはありませんのでご了承ください。

はじめに

こちらは2019年に書いた記事で、何故か限定公開になってましたので公開いたしました
Laravelを使い始めてはや3年になります
時間の流れは早いですねぇ

Laravelとは何か

フレームワークとは

フレームワークは簡単にいうと、アプリケーションの土台となるライブラリです。
フレームワークを使った開発ではアプリケーションの基本的な流れが最初から出来上がっており、
その流れの中に必要に合わせて処理を組み込んでいきます。
フレームワークが用意されていれば、アプリケーションを作成するときに無駄な処理を記述せず
本当に必要な処理を注力できる。 パーフェクトPHP p.198
アプリ実装の労力の軽減

データベースやログインなど、どのアプリケーションでも共通利用する処理や機能
をあらかじめ土台として用意しておくことで、開発者の労力を軽減し、本来力を入れて
取り組むべき実装に集中することができます。

保守性、可読性の向上

フレームワークによってある程度の土台があらかじめ決められているため、
変更の加えやすさや再利用性が高まり、保守性と可読性の向上につながります。

実装の均質化

フレームワークによって定められたコーディング規則に従うことで、複数人が関わる開発現場
でもある程度実装が均質化し、開発効率の向上が期待できます。
PHPはコーディングや設計の自由度が高いため、チーム開発で各々が俺流で実装を始めると
一貫性のないシステムが出来上がってしまいます。

フレームワークとオブジェクト指向

フレームワークを使うにあたって、もはやオブジェクト指向は欠かせません。
オブジェクト指向とは簡単にいうと、様々な機能などをオブジェクトと呼ばれるまとまりとして扱う手法を指します。
公開されているPHPフレームワークのほとんどはオブジェクト指向で記述されています。
オブジェクトの差し替えや継承を行うことでフレームワークの拡張も可能になります、
作りたいアプリケーションに必要なロジック(これをビジネスロジックと呼びます)を記述する際も、
基本的な機能をまとめたオブジェクトを継承することで開発がぐっと楽になります。 パーフェクトPHP p.199

MVCモデルとは

アプリケーションを、モデル(Model)/ビュー(View)/コントローラ(Controller)という3つの大きな役割
にわけて実装を行うというアーキテクチャです

モデル

アプリケーションのビジネスロジックを担うのがモデルです。Webアプリケーションでは主に、
データベースへアクセスしてデータの取得や変更を行う機能をモデルに記述します。

ビジネスロジックとは、「システム固有の処理」を意味します。
データベースへの接続を前提しないアプリケーションはほぼ存在しないはずであり、
各アプリケーションはそれぞれに固有のデータベース処理があります。
その固有の処理を「ビジネスロジック」と呼んでいます。

ビュー

出力を担うのがビューです。Webアプリケーションでは主にHTMLを出力しますので、
ビューではHTMLの組み立てや情報の出力を行います。

ビュはその名の通り画面表示(HTML部分)を担当します。
コントローラがもで絵うからデータを受け取り、それをビューにさらに渡すことで利用者が見える形で
HTML上に展開されます。

コントローラ

ユーザーのリクエストを制御し、モデルから情報を取得してビューに橋渡しするのがコントローラです。

モデルやビューを制御する役割を果たします。

ルーラー

ルーターは入力されたURLに応じてしかるべき場所へ案内し、コントローラへ処理を引き渡します。

Laravelとは

ブームまでの道のり

プロジェクトの開始
Laravelは開発者のTayloor Otwell氏により、遊びのつもりで開始されたMITライセンスの
オープンソースプロジェクトです。
彼の感じていた、他のPHPフレームワークの使いにくさを解決するために開発されました
ブームの時
Laravelが広く知られるようになったのはバージョン3からですが、2012年始めのリリース直後には
それほど話題になっていません。
Laravelは私をばかにしませんでしたという記事が火種となってブームになりました。
そのあとの数ヶ月間、この記事へリンクする検索結果が増え続け、
関連してフォーラムもどんどん利用者が増えました。
記事がユーザーを呼び込み、Laravelのブームが始まったのです。

まとめ

Laravelは1人の開発者によって作られ、世に広がりました。
基本的なMVCやオブジェクト指向という概念はあるもののディレクトリ構造や記述方法が特殊なので
詳細は今後の記事にて紹介したいと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0