私は主にVBA、いわゆるエクセルマクロで業務改善ツールを作っている、非エンジニアです。
VBAという言語使用や、独学・非エンジニアという生い立ちも相まって、あれをしろこれをしろという手続き型のプログラミングをしております。
一応、オブジェクト指向という考え方があるらしきことは見聞きしているので、プロシージャを分割してみたり、クラスモジュールを使ってオブジェクト指向の真似事をしてみたり、自分なりの努力はしてきました。
しかしながら、今回読んだこの本、目が醒めるような衝撃を受けたので紹介させていただきます。
この本は、クラスをどう設計すべきか?変化に対応できる柔軟で強固なプログラムをどう構築するか?ということを、親しみやすいRPGなどを例に解説しています。
特に感銘を受けたのが、「ライブラリの内部実装がどうなっているかについて、いちいち気になるものでしょうか。」というところ。
本書では、細かく緻密にクラスを設計するよう説いているので、「そうではなく、挙動を一挙に書き連ねてしまった方が読みやすいのでは?」と思ってしまいがちなのですが、そもそも内部実装を検証しなくても良いくらい信頼度の高いクラスを設計すべし、という思想に感嘆しました。
きっと本職のエンジニア、プログラマーの方々にも有益だと思いますので、ぜひチェックしてみてください!
私ももう一度読み直して、非エンジニアとはいえ、設計についての理解を深めていきたいです!