エス技研

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.

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

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

  関連記事

CakePHP4の数値項目は「like %10%」の部分一致検索(find select)はできない
CakePHP4の数値項目は「like %10%」の部分一致検索(find select)はできない

CakePHP4でテーブルの数値項目に対してlike句を使用した部分一致検索を実行するとエラーが発生する。クリエービルダーの不具合だと思われ対処方法が分からない。

CakePHP5系でDeprecatedを回避しfindListでキーと値のカラムを指定して取得する方法
CakePHP5系でDeprecatedを回避しfindListでキーと値のカラムを指定して取得する方法

CakePHP4のfindListでキーと値のカラムを指定してテーブルにアクセスする方法がCakePHP5では「Deprecated(非推奨)」となった。推奨の記述方法を解説。

CakePHP4のCakeDC/Usersの Usersへの接続、バリデーションのカスタマイズ方法解説
CakePHP4のCakeDC/Usersの Usersへの接続、バリデーションのカスタマイズ方法解説

CakeDC謹製Usersプラグインの紹介。CakePHP4で使う場合のUsersのカスタマイズとして入力項目のバリデーションの変更を、プラグインのファイルは触らずオーバーライドにより実装する方法を解説する。

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

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

CakePHP3のdatetime型カラムの日時の扱い。秒まで正しく表示する方法
CakePHP3、CakePHP4のdatetime型カラムの日時の扱い。秒まで表示する方法

CakePHP3の日時カラムで秒まで扱う場合はdate()、strtotime()関数ではうまくいかない。CakePHP3であらかじめ用意された「i18nFormat()」を使用する。

Windows上のXAMPP環境のCakePHPのコマンド実行時に環境変数を指定する方法
Windows上のXAMPP環境のCakePHPのコマンド実行時に環境変数を指定する方法

CakePHP4のコマンド(シェル)に対して、環境変数を指定して実行する方法を解説。LinuxとWindows上のXAMPPとでは記述方法が異なるため、Windowsのsetコマンドについても詳細解説。

CakePHP3で値を入力直後にバリデーションする方法解説
CakePHP3で値を入力直後にバリデーションする方法解説

CakePHP3でバリデーションの実行を保存する時から入力情報を受け取るときに変更する処理の解説。CakePHP3ではnewEntity()の処理でバリデートするため1行追加で対応可能。

CakePHP3の1対多での連携を中間テーブルを使った多対多の連携に変更するときの手順
CakePHP3の1対多での連携を中間テーブルを使った多対多の連携に変更するときの手順

CakePHP3で「1対多」の連携を中間テーブルを利用した「多対多」の連携に変更するときの手順のまとめ。中間テーブルの設定やModelの変更などを間違いやすい箇所を指摘しながらの解説。

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

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

CakePHP3でシェルを作成しコマンドラインから実行・CakePHP2との違い
CakePHP3でシェルを作成しコマンドラインから実行・CakePHP2との違い

CakePHP3のシェルスクリプトを作成し、コマンドラインから実行する方法を解説。複数単語をつなげる場合の対応方法がCakePHP2より制限が厳しくなったのでCakePHP3の命名規則の確認が必要だ。