目次
1.はじめに
2.PHPとは
3.cakePHPとは
4.おわりに
1. はじめに
- 軽い自己紹介
- 2021年の4月にほぼ未経験でIT企業に入社した新卒2年目
- 研修終了後は某業界向けの基幹システム開発でcakePHPを使用
- 本記事記載のきっかけ
- cakePHPそのものについてあまり詳しくないと思った
- cakePHPについて、現状の認識の整理をしたい
- 読んでほしい人
- cakePHPに興味がある初心者の方
- プログラミンに興味はあるけど、どのような言語をすれば分からないという方
2. PHPとは
- PHPとは
- Webページを作成する為によく用いられるサーバーサイドスクリプト
- サーバーサイドスクリプト:Webブラウザで読み込まれる前に、Webサーバーで実行されるプログラミング言語
- 「ウェブページをWeb 開発者が速やかに作成できるようにすることを主な目標」として作られた
- Webページを作成する為によく用いられるサーバーサイドスクリプト
- 長所
- MySQLなどのデータベースとの連携
- プログラム実行がWebブラウザの違いに影響されない
- コードを検証モードなどで盗み見されない
- 端末側で不正プログラムを実行できない
- 短所
- ユーザーの操作に応じたリアルタイムな処理には向かない
- サーバー攻撃への対策が必要
- よく使われる場面
- ブログやSNS、会員管理などデータベースへのデータ追加や値検索・更新処理が頻繁に行われるサイト
3. cakePHPとは
- cakePHPとは
- PHP開発の為のフレームワークでオープンソースのソフトウェア
- https://cakephp.org/jp にて公開されている
- 特徴
- 設定より規約
- 設定ファイルに特定の情報を記載するのではなく、クラス名、ファイル名、DB のテーブル名などをcakePHPによって決められた規約に則って記載
- 規約に従って名前を付けることで自動で機能が認識される
- 規約があることで、設定ファイルに記載する情報が少なくて済む
- MVCアーキテクチャ
- cakePHPでは、Model(データ管理)、View(画面表示)、Controller(プログラム制御)の3つにプログラムを分類するMVCアーキテクチャを採用
- 役割が明確に分けられていることで、分業して作業を進めることができる
- 各プログラムが独立していることで、アプリケーションのバージョンアップなど仕様変更に対応しやすい
- bake機能
- bake機能とはアプリケーションを開発の為のプログラムの雛形のこと
- bake機能があることで開発を迅速に進めることができる
- 情報源が豊富
- 公式が紹介している情報源だけでも下記の種類があり、悩んだ時の解決法が見つかりやすい
- 公式CakePHPウェブサイト(https://cakephp.org/)
- CookBook(https://book.cakephp.org/)
- Bakery(https://bakery.cakephp.org/)
- API(https://api.cakephp.org/)
- テストケース(コード内:tests/TestCase/)
- IRC チャンネル(irc.freenode.net 内にてcakePHPタグを付ける)
- 公式CakePHPフォーラム(https://discourse.cakephp.org/)
- Stackoverflow(https://stackoverflow.com/questions/tagged/cakephp/ にてcakePHPタグを付ける)
- 確実に日本語で情報を得たい場合
- 公式が紹介している情報源だけでも下記の種類があり、悩んだ時の解決法が見つかりやすい
- 設定より規約
4. おわりに
今回、cakePHPについて改めて調べてみて、知らなかった情報などもあり、自分にとって良い機会になりました。
(間違えている部分などあれば、ご教示いただけますと幸いです。)
私自身cakePHPでプログラムを組むことは楽しいと思っているので、今後もcakePHPユーザーが増えると嬉しいです。
参考文献
↓こちらの記事ではインストール方法なども載っていたので、cakePHPに更に興味を持った方はぜひ見てください。
掌田 津屋野(2017).『PHPフレームワーク CakePHP3入門』.株式会社 秀和システム
大重 美幸(2016).『詳細! PHP7+MySQL 入門ノート』.株式会社 ソーテック社