PHP クラス〜オブジェクト指向プログラミング〜 第2回〜未経験の為のPHPプログラミング講座〜

前回はクラスの作成と簡単な利用方法を解説しました。

今回は、また違った利用方法を解説します。

created by Rinker
オブジェクト指向の全体像を整理して解説オブジェクト指向は、プログラミングをはじめ、フレームワーク、デザインパターン、UML、モデリング、設計、アジャイル開発手法と、ソフトウエア開発全体を支える総合技術となっています。本書では、オブジェクト指向の全体像とそこに含まれる各技術が何を目的として何を実現するのかを解説します。併せて、混乱を避けるために全体を「プログラミング技術」と「汎用の整理術」の2つに分けて説明します。

静的プロパティ(変数)と静的メソッド(関数)

前回のクラスの解説ではメソッド(関数)を利用してプロパティ(変数)を読み書きする方法でしたが、今回はインスタンスを生成せずにプロパティとメソッドを呼び出す方法を解説します。

インスタンスを生成せずにクラス内のプロパティやメソッドを呼び出すには、クラス名と「::」を利用します。
また、プロパティに関しては前回はクラス内でのみ利用可能な「private」を利用しましたが今回は「static」を利用します。

オブジェクト定数・クラス内定数

静的プロパティ、静的メソッドの呼び出しに「::」を利用しましたが、クラス内定数も「::」を利用して呼び出すことができます。

※クラス内定数の命名は全て大文字で区切りに「_」を利用するのが一般的です。

また、インスタンスを生成した場合も「::」を利用して呼び出すことができます。

クラス名を変数に格納して利用

あまり利用することはないと思いますが、クラス名を変数に格納して利用することもできます。

クラスの利便性は?

クラス内に定義したプロパティ(メンバ変数)やメソッド(メンバ関数)の様々な利用方法をみてきましたが、まだ、なぜわざわざクラスを利用する必要があるのか?わからないと思います。

関数の利用だけで良いのでは?と思う方もいると思います。

クラスの利便性は色々とありますが、複数人で開発する場合に、まず変数名や関数名の衝突を避けられます。
変数や関数は全てプロパティ(メンバ変数)、メソッド(メンバ関数)としてクラス内に定義されているので、別のクラスで同様の名前を利用してもエラーにはなりません。

また、プロパティ(メンバ変数)に「private」を利用し、メソッド(メンバ関数)のセッターでプロパティに値を代入するので予期せぬ変数の上書きを防ぐことや、外部からの変数への干渉をなくすことができます。

created by Rinker
PHP7の基本構文から、クラス、DB連携、セキュリティ対策まで、しっかり習得! PHPプログラミングの標準教科書『独習PHP』が、最新のPHP7に対応。PHPでWebページ/アプリケーションを開発する際に必要な基礎的な知識、PHPの基本構文から、クラス、データベース連携、セキュリティまで、詳細かつ丁寧に解説します。
created by Rinker
時間がなくたって、プログラミングは学べます。学習を躊躇していた人たちに、既存の入門書で挫折した人たちに、「これならできる!」の最短カリキュラムを、土日の14時間で提供。まったくのプログラミング初心者が簡単なWebデータベースアプリを構築できるまでの成長コースを、手取り足取り、導きます。
created by Rinker
オブジェクト指向の全体像を整理して解説オブジェクト指向は、プログラミングをはじめ、フレームワーク、デザインパターン、UML、モデリング、設計、アジャイル開発手法と、ソフトウエア開発全体を支える総合技術となっています。本書では、オブジェクト指向の全体像とそこに含まれる各技術が何を目的として何を実現するのかを解説します。併せて、混乱を避けるために全体を「プログラミング技術」と「汎用の整理術」の2つに分けて説明します。

コメントする

メールアドレスが公開されることはありません。

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