SONICMOOV Googleページ

【PHP入門】MVC入門View編

【PHP入門】MVC入門View編

  • このエントリーをはてなブックマークに追加

1月よりシステムでアルバイトとして採用されましたrnagasawaです。
今回、PHP入門編としてMVCのViewについて書かせて頂きました。

MVCとは?

Model View Controller

MVCの典型的な相関図
MVC(Model View Controller モデル・ビュー・コントローラ)は、ユーザーインタフェースをもつアプリケーションソフトウェアを実装するためのデザインパターンである。

アプリケーションソフトウェアの内部データを、ユーザーが直接参照・編集する情報から分離する。そのためにアプリケーションソフトウェアを以下の3つの部分に分割する。

model: アプリケーションデータ、ビジネスルール、ロジック、関数
view: グラフや図などの任意の情報表現
controller: 入力を受け取りmodelとviewへの命令に変換する

引用:https://ja.wikipedia.org/wiki/Model_View_Controller

今回はMVCのviewの役割について説明いたします。

View

MVCのviewの役割について、MVCのデータパターンにおいて表示させる部分、フロントエンド側として扱われます。viewにhtml5などフロントの実装を書き込むことによって

html側に書き込んだ内容が反映されます。

<!doctype html>
 <html>
 <head>
 <meta charset="utf-8">
 <title>index.php</title>
 </head>
 <body>
 <h1>ビューファイル</h1>
 <p>ビューを表示してます</p>
 </body>
 </html>

上記コードをviewに記述することによってhtml側で表示させることが可能となります。

MVC

ViewとControllerとmodelを組み合わせることによってデータベースへのアクセス、SQLコマンドの送信、プログラムの管理などviewのみだと実装が難しい処理も3つの要素を組み合わせることによって開発の効率が飛躍的に向上します。

MVCと呼ばれているデザインパターンにはフレームワークと呼ばれているものがあります。フレームワークとは、ある程度の基礎的な仕組みを作っておき、アプリ開発時にはそれに乗せるような形で実装をしていく事を可能とするものです。

フレームワークとは?

PHPは基本的にほとんど0の状態からプログラミングをしていきます。
コーディングは実装者によって千差万別。ひたすら一枚のPHPファイルにダラダラとスクリプトを記述していく人や、ある程度モジュール化する人、オブジェクト指向を取り入れる人、同じオブジェクト指向でもクラス設計も人によってクセや思想が出る。

PHPはとっつきやすい分、いろんな人が手を出し、実装方法も好き放題。それが良いとか悪いとか言う話ではありませんが、例えば複数人数で一つのシステムを開発するような場面があったとしたら話は別です。

それぞれが好き放題にやっていてはものすごく作りにムラのあるシステムが出来上がってしまいます。

フレームワークとは、ある程度の基礎的な仕組みを作っておき、アプリ開発時にはそれに乗せるような形で実装をしていく事を可能とするものです。

クラスの名前はこういう規則に従わないと動きませんよ、メソッド名も同じく。ファイルは決められた位置においてくださいね。ただし規則にしたがって作ればとても楽に作れます。

概要:http://www.objective-php.net/mvc/framework

フレームワークの種類

フレームワークはphpに限らず、多種言語に複数存在しますがphpに限って言えば国内では、Laravel5CakePHPcodeigniterなど複数のフレームワークが存在します。興味ある方は調べてみてください。

終わりに

今回説明した内容はviewの触りの部分となります。もう少し細かい部分を知りたい方はqiitaの記事などを参考にすることを推奨致します。

これが最強のMVC(iOS) – Qiita
2015年に備えて知っておきたいリアクティブアーキテクチャの潮流 – Qiita
まだMVC,MVP,MVVMで消耗してるの? iOS Clean Architectureについて – Qiita
MVC、本当にわかってますか? – Qiita

  • このエントリーをはてなブックマークに追加

記事作成者の紹介

rnagasawa(システムエンジニア)

普段はドロイド君と戯れる人生を送ってますー ぷよグラマーです。

システムエンジニア募集中!

×

SNSでも情報配信中!ぜひご登録ください。

×

SNSでも
情報配信中!
SONICMOOV Facebookページ SONICMOOV Twitter SONICMOOV Googleページ
システムエンジニア募集中!

新着の記事

mautic is open source marketing automation