How to

“イメージ” を持て! – プログラミング学習上達虎の巻

イメージをうまく活用しよう!

皆さん、こんにちは。ProgLearn編集部です。

今回の記事で伝えたいことを、先に書いてしまいます。

プログラミング学習にはイメージで覚えておくのが効果的!!

ということです。

プログラミングとイメージ、一見関係がなさそうな2つですよね?

しかし、この事実を覚えておくだけでプログラミング学習の効率が大幅に変わってしまうのです!

変数の”イメージ”は?

簡単な例から見て行きましょう。

皆さん、変数は知っていますか?

どんぶラッコ
どんぶラッコ
流石にしってるよ! JavaScript だったら let i=0 とか書くやつでしょ
編集部
編集部
正解!

では、この変数のイメージ、皆さんはお持ちですか?

私の場合はこんなイメージです。

値を格納しておける箱、というイメージです。

イメージで覚えておくことの効果

では、このように理解をしておくと何がいいのか。

イメージで理解が出来ているということは、文法の本質が理解できた状態になる、ということです。

すると、例えば他の言語の学習を開始した時にも、構造を理解した状態から学習を開始できるため、理解の速度が早いのです。

どんぶラッコ
どんぶラッコ
いやいや、変数とかイメージにしなくてもわかるから!
編集部
編集部
“変数なら”、ね。

変数だと単純な例だったのでイメージで理解することの恩恵があまり感じられなかったかもしれませんが、これがフレームワークの設計思想だったらどうでしょう?

例えばVueではVuexを使うことで値を擬似的にグローバルに使えるようにする仕組みがあります。

しかし、変数のようにただ単に値を書き換えられるという訳ではなく、Vuex独自の状態管理パターンが存在します。

「vuex」の画像検索結果

このように、技術を可視化するということはすなわち、設計思想を把握することでもある訳です。

また、先ほどVuex独自のフロー、という表現をしましたが、これはFluxという設計思想を元に作られています。

このように、設計思想を押さえておくことで、先ほどの変数の例と同様に、自分の応用の引き出しが増えていくことになるのです!

流行り廃りに振り回されないエンジニア力を身につけよう!

10年前、JavaScriptにVue.jsなんてありませんでした。Javaにはラムダ式なんて存在しませんでした。goに至っては、やっと誕生した年です。

このように、新しい技術は次々に生まれてきます。

その時々に最新とされている技術を追い回すばかりではどんどん疲弊していってしまいます。

その中でエンジニアの我々に求められることは、たとえ言語環境が変わったとしても適応をすることができる順応力です。

その順応力を身に着ける上で、概念を抽象化して引き出しとして持っておくことが求められてきます。

皆さんも今書いているコードは抽象化するとこういうことだな、という絵を描けるようにしておきましょう!