パンうめぇ

園児ニアの日記帳

JavaScript Primerを完走しました

jsprimer.net

2021年はフロントエンドを重点的に勉強しようと思い,基礎からJSを学ぶため本サイトを利用しました.

読む前のフロントエンドの知見

  • モノリスRailsのerbでフロントエンドを作成していた
  • JQueryで補佐的にフロントエンドを整える程度
  • Nuxt.jsは雰囲気で触っていた
  • ECMAScriptナニソレ

読んでどうだったか

  • JSの基本文法について学んだ.一見同じような処理でも細かい挙動が違うオブジェクトや,現在非推奨の書き方も多くある.進化が早い言語なので,常に最新の書き方を追う必要があると思った.
  • reduceメソッドが難しい.何回も調べてしまう.使いこなせたらかっこいいと思う.
  • JSの取り巻く環境について大まかに把握できた.よくわからないまま雰囲気で書いていたので,背景を知れたのは良かった.
    • JavaScriptECMAScriptの違いについて学んだ.ECMAScriptはどの実行環境でも共通な動作が定義されている.一方ブラウザとNode.jsでは実行環境が異なるため,それぞれの環境で必要機能が定義されている.共通動作と環境ごとに固有機能を含んだものがJavaScriptであるということを学んだ.
    • ECMAScriptの進化,互換性について学んだ.ES2015前とでは大きく仕様が異なるので書き方に注意する.
    • babel, TypeScript等のトランスパイラーの知見を得た.JSの互換性や型の問題について,トランスパイラーを用いて対処していることを知った.
    • モジュールハンドラーの知見を得た.実行環境の違いによるモジュールの依存関係を解決することを学んだ.
  • 型変換についての知見を得た.暗黙の型変換でバグを生みやすい事を学んだ.型について緩く,危険度の高い言語だと感じた.なぜTypeScriptが重宝されているのか何となくわかった.
  • 非同期処理についての知見を得た.かなり難しい項目だった.完全に理解できたわけではないので,書きながら血肉にしていきたい.

これから

最低限のJSの知見は得たと思うので,Reactの勉強に取り組みたいと思います.バイトとアプリ制作でNext.jsを使う予定だからです.

予定としては,Reactチュートリアル→Nextチュートリアルで基本的な流れを掴み,実際のアプリ開発に入ろうと考えています.時間があればりあクト! TypeScriptで始めるつらくないReact開発 第3.1版【Ⅰ. 言語・環境編】 にも取り組みたいと思います.

学習メモ

Scrapbox手を動かす系にいいかも.

scrapbox.io

コード

github.com