関数型プログらミングの時代ですが、DXの本とかみてると、パターンやオブジェクト図が深くかかわってきてるような、そうなると、オブジェクト指向を避けては通れないような気がします。嫌だけど、OOPやって、それから関数型プログラミングという体を引き裂かれるような体験は避けては通れないのかな、OOPから関数型プログラミングは
あたりですね、Kotlin でやってるみたいでまだ最初の方でしか読んでませんが。。。
ということで、オブジェクト指向の勉強は やはり必須のようですね。あまり教えたくないですが。。。
結局避けては通れないようです。
それで 私流の学び方 教えます。一番良いのは Java で デザインパターンを勉強することです。
他の言語だと、その言語が便利すぎて、すでに デザインパターンが実装された形で言語が作られていてどこがデザインパターンか分からないからです。
お勧めは
です。実はJavaの勉強方法も同じくこの本から進めた方がいいのです。やり方はこの本のサンプルコードを EclipseというJavaの総合開発環境をインストールして動かしていきながら中のコードを読んでいくことです。
Eclpseは 例えば
とかを見てインストールしてみてください。本のサンプルコードは中にコピーするだけで、Eclispeは勝手にコンパイルしてくれるので、いつでも実行できるようになります。デバッグもできるので変数の状態も確認できます。
Javaは全然知らなくても、インストールとコードの動かし方は書かれてる通りやればできます。この辺がどんな言語でも環境構築が壁になりますが、ちなみに最近の流行はVSCodeですが、そこでもできるでしょう。ただ どっちでもいいですが、多分Eclipseのほうがネットにもいろいろ説明が多いような、書籍はJava の入門書はEclipseで行うのが定番ですが、2015年くらいで止まってます。おそらく本で書くよりもネットが普及したのと、それほど、みんなJavaをやらなくなったからではって思います。ちなみに言っておくと、EclipseもVSCodeも開発者はErich Gamma 氏でWiki にある通り、Gang Of Four の主要メンバー
つまりこれから学ぶデザインパターンの起源はGoFのデザインパターンから始まったのですが、それはC++で書かれた本です。有名な本。 それのJava へ言い換えたのが、結城さんの本です。
さて文法は、知らなくても、とりあえずこの本から始めましょう、で、何か文法書なり入門書はそばにおいて、入門書から読んではダメです。こちらを見てコードがわからなかったら、入門書で意味を調べる。これが最善の勉強法です。大抵入門書から読むと、C言語レベルの使い方で息切れしてクラスまで行きません、クラス 抽象クラス インターフェース 仮想関数 ポリモリヒズム カプセル化 スレッドとかまず行きませんから。またJava 特有の public protected private とかは、適当に見てください。あまりこだわっても、他の言語では大まかな意味はあっててもずれてくるんで意味ないです。
リファクタリングにしろ UML的なモデル構築にしろ、基本はJavaが頭にあるように思います。

