AxiZ沖縄ブログ

エンジニア育成学校【AxiZ沖縄】のブログです。

若手技術者向け講座レポート デザインパターン第3回(デザインパターン)

詳細

デザインパターン

デザインパターンとは、オブジェクト指向の言語でよく使用されている設計のパターンをカタログにしたものです。
デザインパターンを知っていると、オブジェクト指向の言語で開発をするときに 汎用性の高い設計ができたり、 クラスライブラリやフレームワークがどのような仕組みになっているかを知るときに役立ちます。
デザインパターンの本では、GoFの23のデザインパターンという23個が紹介されていることが多いです。
この講義ではその中からいくつかをピックアップしてご紹介しました。

講義内容

第1回と第2回で、それぞれ「Template Methodパターン」「Strategyパターン」を紹介しました。
今回は3回目でしたが、1回目と2回目を不参加だった方もいらっしゃったので、 まずはその2つのパターンを軽く復習しました。
そのあとに新しくいくつかのデザインパターンを紹介。
今回紹介したのは、 「Factory Methodパターン」「Stateパターン」「Singletonパターン」の3種類です。
それぞれ説明をした後に演習で実際にプログラムを書いてもらう形式で講義しました。

アンケート結果

アンケートの集計結果は以下のようになりました。

f:id:axizoki:20190131193539j:plain

f:id:axizoki:20190131193554j:plain

参加者の声

  • 業務で活かせる内容ですごくよかったです。今後意識して実装ができそう。

  • もう少し実用的な例があると役に立ちそうと思った。 デザインパターンは調べはするが、なかなか理解が進まなかったが、実際に演習を通すことで理解を深められた。

  • 説明⇒演習ではなく、演習を説明しながら一緒にやって、 その後に同じような演習をする流れの方が理解しやすいと思いました。

  • FactoryMethodの使い方、実装の仕方などが分かって良かった。 普段はC#を使っているので、Javaを読み解きながらC#でも実装してみたいと思います。

  • 構成や概念は理解できたが、いざコーディングしようとすると、書き方が分からなくて手間取った。

振り返り

今回課題に感じたのは2点です。
1点目は、少し難しそうにしている人が多かったという点です。
パターンの一つについて、概要を説明して、そのまま演習という流れにしたのですが、 演習で手間取ってしまう人が多かったです。
簡単なサンプルソースを用いてもっと具体的に説明して、 そのあとに演習という流れの方がスムーズだったな、 アンケートの結果を見ながら思いました。

また、時間も足りなかったと感じています。
次回は回数を増やすなどしながら、 もっとじっくり学べる構成を考えていきたいと思います。

ただ、デザインパターンを使うことのメリットは工夫して分かりやすく伝えることができたので、その点は良かったです。
アンケート結果などを参考に、満足度と理解度をもっと上げていけるような講義を作っていきたいと思います。
参加してくださった皆さん、ありがとうございました。

参考にした書籍

今回参考にした書籍は以下の通りです。