関数、クラス、メソッドのお勉強

私は現時点でPHPを使い始めて2ヶ月あまりです。
とりあえずイメージしていたサイトを、第一段階まで作りあげました。


次に第二段階にステップアップするため、今までに書いたコードを整理しているところです。
共通部分を1つにまとめるため、今まで(よくわからないから)自分で書くのは避けていた「関数、クラス、メソッド」のお勉強をします。




ある程度体系的にというか、最低限の知識を学ぶとき。
やっぱり今でも書籍からのアプローチからがいいですね。


グーグル先生におうかがいをたてるとき、Q&A的な情報はみつけやすいです。
しかし用語の定義とか、端的にまとめられた説明とかは、編集者の手も加わる書籍の方が今でもアドバンテージがあるようです。
(最近はblogでも、冒頭で端的にまとめている記事を多くみかけるようになりましたが)


とりあえず手元にあった

を読んでみました(初版P28、P50、P62)。


関数は、処理のまとまり(を再利用できるようにひとくくりにしたもの)。
クラスも、処理のまとまり(を再利用できるようにひとくくりにしたもの)。
しかし関数とは異なり、「データ構造を処理とまとめて扱」う点が大きく異なる。
「データ構造を処理とまとめて扱」うことにより、「さらに高度な再利用ができる」。


というように理解しました。
クラスの中に関数がでてくるので、関数の関数みたいなものかと思っていました。
冒頭でクラス変数の定義をしていることに注目するべきだったのですね。


なお、このクラスの中にでてくる関数は、メソッド(メンバ関数と呼ぶ、と。
コンストラクタとか、クラスの継承についても、上記の説明の直後あたりに書いてありました。


このあたりは、「HTMLScrapingで苦戦…終了Comments
の際にも少し読みました。
しかし苦しんだあげく、理屈はよくわかりませんでした。
今では少しわかるようになった……ということは、成長してるんですかね?



上記前提をふまえて、以下のページを読むと、なんとなく意味がわかるようになってきました。
クラスを、「ある種のテンプレート(雛形)」と表現するニュアンス、なるほどという感じです。


▽クラスとオブジェクト(PHP入門)
 http://www.scollabo.com/banban/php/php_11.html


さってと、コードを整理していこう。