C# オブジェクト指向の基礎:おわりに #13

C#でオブジェクト指向を学ぶための連載講座もこれで終わりとなります。12記事でオブジェクト指向のすべてを解説できたとは思いませんが、少なくともその入り口と核となるアイデアは提供できたと思っています。オブジェクト指向は奥が深く、簡単に身に付くスキルではないなと連載をしながら考えていました。

特に実際の現場では、より複雑なモデルを一般化しながらアプリケーションを設計・構築していくわけですが、業務を一般化するだけでも大変であるのに、それらをさらに一般化して抽象と具象に切り分けて考えるのは本当に大変だと思います。ですので、ここで解説できるのは基本でしかありません。

オブジェクト指向を身に付けるには、現場で実践して失敗を重ね、反省をして進んでいくしかないんだと思っています。ですので、この講座では色々なアプリケーションを構築しながら、そのエッセンスが学べるように考えてみました。最後のほうはデザインパターンを紹介するなどして、より汎用性のあるモジュールの組み方もできたのではないかと思っています。

オブジェクト指向の次

オブジェクト指向の基本を学んできましたが、次は何をすればいいんだろうと思う人も多いかもしませんので、次に学ぶべき内容について少し言及しておきたいと思います。私がオススメするのは「デザインパターンを学ぶこと」です。当連載でも最後にファクトリーパターンとビルダーパターンを紹介しました。

デザインパターンはこのように「部品」として汎用性のあるプログラミングの組み方のレシピ集です。そして何より抽象と具象の世界が織りなす珠玉の表現が詰め込まれています。この連載で学習したインターフェースや抽象クラスなどのイメージをより膨らませるためにもデザインパターンを学ぶのがオススメです。

またデザインパターンを学ぶことで、より汎用性のあるプログラミングの組み方を知ることができるので、現場での作業にも磨きがかかります。普通ならクラスを定義するところをインターフェースで定義したり、抽象クラスから定義して汎用性を考えながら実装するなど、自分の引き出しが増えていくのでオススメです。

最後に

さて、最後になりますが、この「オブジェクト指向の基礎」連載を最後まで読んで頂きありがとうございました。この連載でC#を使ってオブジェクト指向を実現するための方法が少しでも理解してもらえたら幸いです。オブジェクト指向の基本はカプセル化・継承・多相性であることに変わりはありませんが、もう少しかみ砕くとカプセル化・継承・コンポジションです。それらを成すのが「分類」と「コンポジション」です。

オブジェクト指向を体現するためのエッセンスを個人的な経験を元に詰め込んでみました。ここで解説したことを理解できれば、多くの現場でも役立つと思いますし、そうして欲しいと願いながら記事を執筆してきました。この連載があなたのスキルアップに繋がればと思います。それでは、最後になりましたが、これまでありがとうございました。次の連載でお会いしましょう。