読者です 読者をやめる 読者になる 読者になる

Develop and Design Note

フロントエンドなデザイナーの覚書

JaveScriptの本格的な修行を始めます

JavaScript

JavaScriptはWebのUIを構成する言語の一つですが、最近は、サーバー側でもJavaScriptを実行できるNode.jsが普及してきました。
また、JavaScriptをベースとした次世代の技術、Web ComponentsService Workerが登場し、高い将来性も秘めています。

つまり、今、JavaScriptを極めなければ、時代に置いてかれてしまうという、大きな危機感を覚えると同時に、JavaScriptさえ極めれば、今後数年、数十年はWebの開発者として生きていけるのではないかという、希望が抱けます。

ということで、JavaScriptを本気で勉強します!

自分のJavaScriptレベルの理解

勉強を始めるにあたって、まずは自分のJavaScriptのレベルを知ることから始めます。
ネットで探してみると、JavaScriptのレベルチェック表なるものがありました。

やや古めですが、2010年の方は、具体的な構文や作法についての項目が複数あるので、レベルチェック表という意味では良くできていると思います。

これをスーパーエンジニアの友人たちと見ながら、今風に補正し、さらに5段階を、「入門・初級・中級・上級・上級以上」に再分類するなどして、2015年版のJavaScriptレベルチェック表を独自で作りました。

で、自分で試してみたところ、自分は「初級」でした。
スーパーエンジニア曰く、WebのUIを開発する者である以上は、最低中級は欲しいとのこと。
上記の2010年版のサイトでも中級が「業務で1人月のJS担当としてカウントされる」とあるので、確かに、中級が目指すところとしては良さそうです。

ということで、自分のレベルを初級から中級にあげることを、この半年の目標とします。

レベル上げのための修行

目標を定めたので、次はアクションを決めます。
これについてもスーパーエンジニアからアドバイスを頂きました。

Javaでプログラミングのアルゴリズムや文法の基礎を学ぶ

JavaScriptは奥が深く、実際、レベルチェックを作り直してる時に、「上級以上」に分類される項目だったり、分類が難しい「JavaScriptの深い仕様の一例」みたいな項目がたくさん出てきました。
さらに、Node.jsなど、サーバーサイドの話を追加すると、項目が倍増するような気もします。

そこで、プログラミング初心者が学びやすいとされるJavaを学ぶことで、アルゴリズムやプログラミングの基本文法を体系的に学びます。

実際、JavaScriptの解説書などを読むと、あるJavaScript構文の説明には「Javaの◯◯をイメージすると良いでしょう」「Javaの◯◯と同じ意味です」などの一文をよく目にします(Javaやってねーよ#^ ^というツッコミは置いておいて)。

なので、個人的にもちょっと興味あるので、Javaやってみたいなと思います。
実際やることは、本当に全くの初心者なので、たぶん、ドットインストールから入ると思いますw

慣れてきたら、Androidの簡単なアプリでも作ってみたいですね。

ゲーム式学習サイトでJavaScriptアルゴリズムと文法を学ぶ

Javaに集中しすぎて、肝心のJavaScriptに何も手をつけなかったら意味がないので、片手間でJavaScriptの基礎を勉強します。

で、「片手間」でできる学習って何だろうと思い、ググったり、スーパーエンジニアに相談したりしてみたところ、ゲームをしながらプログラミング言語の学習ができるサイトが良さそう、という結論に至りました。

けっこうゲーム形式のプログラミング学習サイトってたくさんあるんですね。
ただ、割と簡単すぎたり、退屈してしまうゲームが多かったです。

そんな中、以下の2サイトは、適度な難易度かつ退屈しないので、オススメです。

ということで、CodeIQとCodinGameやってみます!

まとめ

以上をまとめると、直近数ヶ月は、こんなカリキュラムになりそうです。

  1. Javaを勉強する
    • ドットインストールから始め、最終的には簡単なアプリを作る
  2. 片手間でCodeIQとCodinGameをやる

若干地味ですが、「基礎練」って大体こんなもんな気がします。
サッカーの練習も、受験勉強も、パッとしない地味な勉強が多かった気がします。

このステージを超えたら、実際に、JavaScriptで何か作ってみようと思います。