kagamihogeの日記

kagamihogeの日記です。

手続き型とオブジェクト指向はそんなに違うものかな

今回生まれて初めてヘッダー書きーの実モジュール書きーのをやったわけだが、インタフェースの公開/隠蔽はオブジェクト指向のそれと根底ではなんも変わらないなぁと思いました*1。コレのおかげでクラスってすげぇじゃん、と改めて感動してしまいましたよ。ちと大げさか。

Cだとポインタ渡しで出力パラメータ多用するわけだけど、正直すごいわかりにくい。Cにあんま慣れてないのも大きいんだろうけど、値がどこでどんな風に変更されるのかがすごく追いにくい気がする。

それに対してデータとメソッドを一緒くたにまとめるクラスであれば、上のような処理は自然と一箇所にまとめられる。もちろん上手く設計しないとダメだけど・・・。

そんなわけで。
たまーに手続き型を害悪の塊のように言ってる人がいるけど、ちょっと違うんじゃないのかなぁ?と思う一日でした*2

*1:実現の仕方は随分違うけど

*2:悪く言われてるのはいわゆる「COBOLer」なんだろうけど