プログラミング入門はした!AI時代だからこそ、次のステップに「設計」を!「デザインパターン」をお勧めしてみたり。
Amazonアソシエイト貼ってます!
今日はプログラミングを始めたばかりの方、中級者に足をかけているくらいの方向けの話になると思います。
プログラミング言語の文法を覚え、簡単なものなら作ることができる。
だけど、設計ってどうしたらいいの?で疑問が湧き、躓く方は多いのではないでしょうか。
AIはコードを書いてくれます。
ですが仕事として何かを作るなら、設計まで丸投げすると、拡張性や保守性に欠ける構造になってしまうことも少なくありません。
デザインパターンというものをご存知ですか?
オブジェクト指向なんて変な言葉があります。
これを実際の設計に適用していくとなると、多くの人が混乱します。
なんでもかんでも抽象化して隠蔽して継承して、これがオブジェクト指向だ!なんてものではなく、考え方をどう使うかが問題だからです。
ですが、優秀な先人がこれをパターン化してまとめてくれています。
後発である我々は、独自にあらたな考え方に昇華する必要なんてないんです。
IT系の本は、大半がその分野では使うことができても、分野を跨いで直接的に役に立つなんてことはほとんどないと思っています。
対してデザインパターンというのは、特定の言語に限定される技術ではなく、設計の指針や考え方そのものです。
なのでデザインパターンはちょっと特別なものだと思っています。
私は、この本をよく眺めていました。
残念ながらAmazonでは中古しか見つかりませんでした。
人にあげてしまったので手元になく、Kindle版もありませんでした。
思いっきり「Java」とタイトルにありJava以外では意味がなさそうに感じるかも知れませんが、全くそんなことはありません。
実際、他の言語を使用した複数の設計で大いに役立ちました。
重要なのは、抽象的に考えたときにどのような場面だと考えることができ、そのような状況を適切に制御するにはどのような役割が必要なのか、考える元が詰まっていること。
そして、図を読み解くことで、どの部品がどのタイミングで生成され、どのタイミングでお役御免になるのか、想像しやすくなること。
「Java」はサンプルコードをJavaで書いてあるという程度ですので、大枠としての「プログラミング」視点では、言語にかかわらず適用できる考え方が書かれています。
そこが本当にすごいところです。
プログラミング関連の本は言語やプラットフォームを絞って書かれていることで、固有分野では痒いところに手が届く一方、汎用的なものは少ないからです。
今はこのようなものが売れ筋っぽいです。
ハンドブックが良かったのは、こちらのタイトルにあるような「学ぶ」というプロセスではなく、使えそうなものを眺めて適用するためのコンパクトで安い本だったからです。
ただ、サンプルをチラ見した限り、こちらも同じような視点で使える良書なのではないかと思いました。
完全に私見ですが、ひとつひとつのパターンを完全に理解して覚えることは、できればやったら良いだけの話で、図を眺めたりしながら、これは使えるのか使えないのか、使うならどのように使うのか。
こういった本を片手に考えてみるということが重要なのではないかと思っています。
何か言語の文法は覚えたぞ。
もう一歩先の役にたつものを武器にしたいぞ。
みたいなことを考えている方、目から鱗の構造・考え方が詰まっています。
AIがコードを書く時代だからこそ、「どう考えるか」という部分は、これからも人間の仕事として残り続けるのではないかと思っています。
デザインパターンの本を手元に置くことは、その最初の一手になるはずです。
最後に。
全てを覚える必要なんて微塵もありません。
必要になった都度、本を開いて図やサンプルを眺め、「この考え方は使えそうか?」と考えてみる。
それだけでも十分価値があります。
私自身、この本は「読む本」というより「眺める本」として使っていました。
何でもどうぞ!答えられるものは全て答えます!
設置はお済みですか?図らずも人の庭でnote質問箱を試す!|へろん
メンバーシップ始めました!
まだ手探りですが、ご要望/無茶振り/質問、可能な限りお受けします!
有料記事、今回は問題提起と警告!
note生活1ヶ月の総括記事を書きました!大事な部分は全て無料公開中!
何を考え何をしてきたのか、500人記念のワンコインで公開します!
記事作成のお供に!お役立ちツール!
その他、こんなことやってみてます!
気に入ったらスキ、フォローよろしくお願いします!
note外から見にきてくださったかたも、もしよければハートマーク押して頂けたら励みになります😊
