エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


CakePHPを学ぶ際にはオブジェクト指向を学ぼう

      2014/04/10

CakePHPはオブジェクト指向でできているのでオブジェクト指向を学ぼう

 

PHPのオブジェクト指向を学ぶためのサイト

 
私は、オブジェクト指向の言語を使ったことがなかったために、オブジェクト指向の仕組みについてほとんど理解がありませんでしたが、下記のサイトを見つけた時に、やはり一度オブジェクト指向についても勉強をしておく必要があるな、と思えました。
 http://www.objective-php.net/basic/
 
何せ PHP自体がオブジェクトの考え方をより強く取り込むようになってきていることや、CakePHPが MVCアーキテクチャを使っていて、オブジェクト指向の考え方の理解なしに CakePHPの本質を理解することができないからです。
 
また、上記のサイトは、丁寧にオブジェクト指向の考え方を説明してくれていて、非常に分かりやすく、すんなりと頭の中に入ってきてくれました。
 
このサイトで勉強したおかげで、そもそもの話として、関数とオブジェクトの違いを理解できましたし、クラスに対してデータのやり取りをする際に記述する「$this-> name」の意味とかも理解できて、これから CakePHPを理解していくスピードも速くなっていけると思いました。
 
 
また、このオブジェクトに関して勉強したことで、これまでよく分からなかった「クラス」ってこういう意味だったのか。関数とはこういうところが違ったのか。ということが理解できました。
インスタンス、コンストラクタ、アクセス修飾子....そんなクラスに関連する言葉も理解できましたし、アロー演算子(->)、スコープ定義演算子(::)といったなんとなくぼんやりとしか理解していなかった記号の意味も理解が進みました。
まだまだ「理解できました!」っていうほど理解してませんが....
 
 

オブジェクト指向を知らずに PHPのソースを読むと...

 
オブジェクト指向を知らずに PHPのソースを読んでいたりすると、分からない記号がいっぱい出てくる感じがします。
しかも、記号なので検索してもほしい情報になかなか行き当たらなかったりもします。
さらに、情報に行き当たったとしてもオブジェクト指向の仕組みを理解していないと、説明を読んでも全く意味が分かりません。
そんなネタ話を下記の記事で展開しています。
 「PHPのソースで見慣れない記号が出てきた・アロー演算子

 - CakePHP 3.x 4.x 5.x

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

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

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

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

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

CakePHP3で環境変数を設定して本番環境と開発環境を分けて処理をする場合
CakePHP3で環境変数を設定して本番環境と開発環境を分けて処理をする場合

CakePHP3で開発環境と本番環境とで違う設定ファイルを読み込ませて環境ごとに定数を切り替える方法を解説。Apacheのhttpd.confに環境変数を設定し、それを読み込み判別する。

CakePHP3で現在処理しているコントローラー名、アクション名を取得する方法
CakePHP3で現在処理しているコントローラー名、アクション名を取得する方法

CakePHP3で現在処理しているコントローラー名、アクション名を取得する方法を解説。複数の方法があるが、getParam()メソッドを使う方法が汎用性があって便利かも。

CakePHP3でテーブルにカラムを追加したときに変更するポイントのまとめ
CakePHP3でテーブルにカラム(項目)を追加したときに変更するポイントのまとめ

CakePHP3でシステム開発をする際、途中でカラムを追加した場合に何を変更すればいいかを確認。カラムを追加する前後で Bakeした結果を比較し、変更になった点をリストアップした。

CakePHP3の検索プラグイン「friendsofcake/search」の様々な検索の仕方の実装方法
CakePHP3の検索プラグイン「friendsofcake/search」の様々な検索の仕方の実装方法

CakePHP3で検索をするプラグイン「friendsofcake/search」の検索条件のカスタマイズ方法の解説。検索項目を増やしたり、以上、以下での検索や、チェックボックスによる検索の方法などを解説。

CakePHP3のアソシエーション機能を使い関連レコードをまとめて削除

CakePHP3でレコードを削除する際に関連するレコードをまとめて削除する機能の解説。フレームワークのメリットを存分に発揮し、コマンドを1行追加するだけで実装可能。

CakePHP4、5のユーザ認証でID、PASS以外の削除フラグなども条件加える方法
CakePHP4、5のユーザ認証でID、PASS以外の削除フラグなども条件加える方法

CakePHP4系、5系ではAuthenticationを使用してログイン認証を行う。その認証でID、PASS以外の削除フラグなどの条件を加えたいときの対応方法について解説。

CakePHP4のCakeDC/Usersのログイン時のリダイレクトとユーザ権限管理の設定解説
CakePHP4のCakeDC/Usersのログイン時のリダイレクトとユーザ権限管理の設定解説

CakeDC謹製UsersプラグインのCakePHP4版の紹介。ログイン認証後にリダイレクトする先の設定方法についての解説と実運用するために必要なコツを解説。便利な仕組みも仕様の理解があって初めてうまく使いこなせる。

CakePHP3で Ajaxを使う方法の解説。3.6以降対応。Successとthenの両方を解説。
CakePHP3で Ajaxを使う方法の解説。3.6以降対応。Successとthenの両方を解説。

CakePHP3でajaxを利用する処理の実装方法を解説。プルダウンを変更するとデータベースの値を取得し検索結果の内容を変更するというような処理を想定。CakePHP3.6以降の CSRF対策対応済。

CakePHP2の検索Plugin CakeDC/Searchで重複を省くgroup by(distinct)の実装方法
CakePHP2の検索Plugin CakeDC/Searchで重複を省くgroup by(distinct)の実装方法

CakePHP2の検索プラグイン「CakeDC/Search」で、重複レコードを省くgroup by、distinctを使う方法についての解説。設定する場所はpaginatorの条件とするので、find()関数と同じ。

CakePHP 2.3 主キー(ID)以外のキーで更新方法 updateAll

主キー(ID)以外のカラムをキーとして更新する方法、updateAllの使い方をサンプルを用いて解説します。