オブジェクトについて
仕事が始まって一週間。
早いものです。
といっても、まだ仕事ではたいしたことはしてませんが・・・。
とりあえず先週からはサムネイルを生成するプログラムを書いています。
GD使って、jpgを圧縮するやつです。
とりあえずネットで使えそうなライブラリを検索。
このくらいなら自分で作ってもよさそうだけど・・・。
というか、以前バイトでも全く同じようなものを作りました。
今回の自分の新しい要素としては以下の二点。
- オブジェクト志向で書く
- コマンドから呼び出せる
オブジェクトというのはプログラミングの作法の一種です。
ある動作をさせるときのサブ動作群をまとめて一つの対象として考える書き方です。
例えば「ファイル」というオブジェクトがあると考えるならば
「開く」、「保存する」、「閲覧する」とか、そういった関連する動きをひとまとめにしたもの。
現在ではJAVAを始め、様々な言語でのプログラミングでは
当然のスキル(?)とされています。
反対にオブジェクト指向ではない書き方の一つとして
スクラッチ、またはベタ書きと呼んでいる書き方があります。
これは一つの動作に対する手順をそのままプログラムとして書くやりかたです。
オブジェクト指向のメリットとしてはなによりも拡張性と再利用性です。
拡張性とは、関連するオブジェクトを連結させることで
より複雑な処理を簡単に(簡潔に)プログラミングできるということ。
再利用性というのは、関連する動作群の基盤を作っておくことで
似たような処理があったときには、それを再利用ができるということです。
デメリットとしては比較的きちんとした設計をしないと
拡張性や再利用性が低くなってしまうということと
プログラミングに時間がかかるということです(短期的に見れば)。
一方スクラッチのメリットとしては手早く書けるということと
人間の思考方法に沿って書けるということです。
デメリットとしては、再利用性がないので
類似する処理にたいしても重複するようなソースを書く必要がでてくるということです。
・・・今日は二番目のコマンドからphpを呼び出すプログラムについて書こうと思ったんだけど
前のアルバイトをやめるときに、オブジェクトについて書くということを約束していたので
今日はオブジェクトについてもうちょっと書いてみようと思います。