2013年10月4日金曜日

オブジェクト指向をぼんやりと理解

オブジェクトって何?

もの。人とか車とか。ざっくり生き物とか時間でもいい。ものというより概念?

classって何?

=> オブジェクトの設計図、説明書。オブジェクトの属性やオブジェクトができることを定義する。

インスタンスって何?

=> 設計図からつくられた実体。


ブログ記事をPostというクラスで表現するとこんな感じ?(自信なしw)


class Post
{
    private $title; // 記事タイトル
    private $body; // 記事本文
    private $author; // 著者
    private $posted; // 投稿日時

    public function __construct($title, $body, $author) {
        $this->title = $title;
        $this->body = $body;
        $this->author = $author;
        $this->posted = time();
    }

    // DBに保存する処理
    public function save() {}
}

$newPost = new Post(
            'オブジェクト指向は難しい',
            '本文本文本文本文本文本文本文本文',
            'ysk');
$newPost->save();

オブジェクト指向の定跡

=> メンバ変数はprivateかprotectedにしておいて取得、変更はpublicなメソッドを通してやる。他にもデザインパターンなるものがあるらしい。(ちらっと見てみましたが難しいそうなのでまた今度w)

オブジェクト指向のメリット

コードが何千行にもなったとき、オブジェクト指向で書けば各オブジェクトが役割分担できてるから後で見返すときも追いやすい? 他にもありそうです。


以上、今日勉強してわかったことでした。まだまだぼんやりとしか理解できてません。完璧な理解は諦めました^p^ おいおいわかってくるだろうとw

はー疲れたーーーーーー

1 件のコメント :

  1. すごいなぁ~ 進歩が早いなぁ~

    by ueaoiy

    返信削除