blog

デザインパターンの学び方

「オレンジは淮南で生まれればオレンジであり、オレンジは華北で生まれればハリネズミである」--サーバーサイドのアプリケーションシナリオでは合理的で便利でクールに見える操作でも、フロントエンドのシナリオに...

Mar 4, 2020 · 3 min. read
Share this

  1. フロントエンドはよく機能しています;

デザインパターンのこの部分を学ぶことで、少なくとも3つのことが達成できます:

  1. フロントエンドデザインパターンのコアアイデアと基本概念を完全に理解し、抽象的な設計原則を具体的なシナリオでマスターします。
  2. コードが書ける、良いコードが書ける;

それほど難しいことではありません。

デザインパターンが「難しい」のは、その気の遠くなるような抽象化と散在する知識のせいです。そこで、本書が注目する問題、それは「技術に対する退屈な恐怖心を取り除く手助けをすること」です。

抽象化とは、ほとんどすべての理論的知識に共通する特徴で、それがもたらす最も直感的な問題は、ある文章のすべての単語を知っていても、その文章が何を言っているのかわからないということです。)このため、「この知識はすごそうだ、自分には学べないに違いない」という錯覚が生じます。

実際、デザインパターンは高尚なものではなく、非常に地に足の着いた、非常に実用的なものです。なぜなら、それ自体が、自分のキャリアにおいて、非常に苦いプログラマーの集まりであり、落とし穴の一歩を踏み出すためのものだからです。知識の抽象性がもたらす理解の障害を解決するためには、繰り返し述べて説明するのではなく、正しいシナリオに身を置いてこのパターンの良さを体験することが重要です。具体的なデザインパターンを学ぶ過程では、各章を原則→実践→まとめというような流れで進んでいきますが、読み飛ばししないように、見るだけでなく、実行することも踏まえるようにしていただければと思います。デザインパターンは理論的な知識ですが、それは結局のところ、人々が実践の過程で要約し、洗練され、それの意義を習得するために、それは正確に日常の練習に復元するためです

分散型というのは、デザインパターン自体が異なる問題に対する解決策の集合体であり、一見すると互いに関連性がないように見えるため、学習者が学習と忘却のジレンマに陥りやすいからです。

しかし、いわゆる「分散化」は、実は紙虎なのです。デザインパターンを深く理解した後で、パターン間には無視できない共通点や相関関係があることに気づくでしょう。次のセクション「デザインパターンの道と技」では、デザインパターンにおけるいくつかの重要な設計原則と核となる設計アイデアを学びます。次のセクションでは、デザイン・パターンにおけるいくつかの重要な設計原則と核となる設計アイデアを学びます。具体的なデザイン・パターンを学んだら、これらの設計原則を具体的なアプリケーション・シナリオに復元します。このプロセスでは、異なるデザインパターンが島ではなく、互いに反響し、相互達成し、共同で完全で古典的なソフトウェア思考体系を構築することがわかります。

フロントエンドエンジニアは、何よりもまずソフトウェアエンジニアです。

かつては、「フロントエンドはページのことで、ソフトウェアは別物」というように、ソフトウェア工学に対する狭い理解がありました。フロントエンドアプリケーションの複雑さが日々変化している現在では、フロントエンドアプリケーションは、ソフトウェアのアイデアを正しく伝えるものとなっており、フロントエンドエンジニアにも、複数の専門スキルを習得することに加え、ソフトウェア理論に関する最も基本的な知識が求められています。

技術者同士の言葉の戦いは、毎度のことですが、少しでも高みを目指そうと思うと、必ずこのような高尚な話題の「アーキテクチャ」を振る目から外さなければなりません。しかし実際、多くの人に欠けているのは、このような先見的な情熱ではなく、前述の最も基本的な点における「不変の能力」、つまり特定の問題を解決するためにロバストなコードを使用する能力なのです。ソフトウェア工学の分野におけるこの能力は、古典的な知識体系、正確にはデザインパターンに反しています。

ですから、信頼できる開発者になりたければ、まずデザインパターンをマスターしましょう

終了:

基本的な理論知識はその人のベースラインであり、理論が強ければ強いほどベースラインは高くなります。そして、自分自身の目標を設定し、はしごを登った後、目標に到達するのは時間の問題であり、多くの野生のエンジニアが半生に従事し、良いエンジニアのベースラインに達していない、それらの多くは、学習の高レベルを思い付くために頭を悩ませたが、それは通常のエンジニアは非常に自然なことを見ています。-- 呉俊

Read next

コードを使用してSAP CRMビジネスオブジェクトのすべての添付データを取得する

論理オブジェクトのインスタンスは5つあり、期待通りに動作しています。 物理オブジェクトのインスタンスの数は、論理オブジェクトのインスタンスの数よりも多くなっています。

Mar 4, 2020 · 1 min read