エス技研

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

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

Message

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

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

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

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

  関連記事

CakePHP3でレコードを追加、更新(Insert、Update)する複数の方法を紹介
CakePHP3でレコードを保存(追加、更新、Insert、Update)する複数の方法を紹介

CakePHP3でレコードを追加、更新(Insert、Update)する記述方法を解説。1件ずつ処理、全件をまとめて処理、条件に該当する複数件のレコードを処理方法をサンプルコードを用いて解説。

CakePHP4で定数の設定と呼び出し方法の解説(defineとConfigure)
CakePHP4で定数の設定と呼び出し方法の解説(defineとConfigure)

CakePHP4で定数を設定、使用する方法を解説。定数定義はdefineとConfigureを使用する方法を解説。また、bootstrap.phpに直接記述する方法と別のファイルにする方法を解説。

CakePHP4、5のnewEmptyEntityで作成したオブジェクトは空なのか、確認してみた
CakePHP4、5のnewEmptyEntityで作成したオブジェクトは空なのか、確認してみた

CakePHPでレコードを新規登録をする際にnewEmptyEntity()を使って空のEntityを作成するが、これのempty、is_nullなどのでの判定結果がtrueかfalseか確認してみた。

CakePHP3でDocumentRootやwebroot、imgフォルダのURLやドメイン、パスを取得
CakePHP3でDocumentRootやwebroot、imgフォルダのURLやドメイン、パスを取得

URLやドメイン、フォルダへのパスの取得は、ビューではUrlHelperを使い、コントローラーではRouterクラスを使います。第2引数の指定でURLを取得することも可能。

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

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

CakePHP3のCakeDC/UsersのUserHelperでログアウトやreCAPTCHAをカスタマイズ
CakePHP3のCakeDC/UsersのUserHelperでログアウトやreCAPTCHAをカスタマイズ

CakeDC謹製Usersプラグインの紹介。UserHelperを利用し、ログアウトのリンクや権限があるときのみ表示されるリンク、プロフィールページへのリンク、reCAPTCHAの設置方法などを解説。

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

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

CakePHP3のメール送信の処理・テンプレート使用・添付ファイル送信も解説
CakePHP3のメール送信の処理・テンプレート使用・添付ファイル送信も解説

CakePHP3からメールを送信する方法解説。基本的な記述方法を基にして、テンプレートを使う方法、ファイルを添付する方法へと拡張しながら解説。

CakePHP3のCakeDC/Usersのバリデーションのカスタマイズ方法解説
CakePHP3のCakeDC/Usersのバリデーションのカスタマイズ方法解説

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

CakePHP4から外部のデータベースにアクセスする方法解説
CakePHP4から外部のデータベースにアクセスする方法解説

CakePHP4のシステムから他のシステムのデータベースにアクセスをし、SQL文を実行する方法を解説。try-catchでエラーを取得する方法も解説。