Skip to content

Latest commit

 

History

History
206 lines (148 loc) · 7.98 KB

03_learn_to_JavaScript.md

File metadata and controls

206 lines (148 loc) · 7.98 KB

学ぶ


何故JavaScript自体を学ぶか

  • jQueryが便利だから生JavaScript書くのがだるい
  • 今はCoffeeScriptなどが人気
  • あえてJavaScript自体を知る必要はあるの?

JavaScriptという枠

JavaScriptはJavaScriptで書かれるとは限らない

別言語からの変換

  • altJS
    • 別言語からJavaScriptへ変換するものをまとめたサイト
  • 例)
    • CoffeeScript
    • GWT Java -> JavaScript
    • Script# C# -> JavaScript
    • Emscripten

JavaScriptに別言語で入門する弊害

jQueryという別言語...

  • jQuery語
    • 「jQueryでできて、JavaScriptでできないことは何ですか?」
    • プラグインモンキーになりやすい
    • jQueryを枠を出たJavaScriptの問題を解決できない
  • CoffeeScript語 new
    • "JavaScriptのGood Partsを集めたもの"
    • JavaScriptに存在しないclassを持っている
      • classという言葉がJavaScriptに変換した際に持つ意味合いの違い
      • JavaScriptはprototype
    • CoffeeScriptだけでは本質までは見えない

JavaScriptの本質を知る必要性

  • JavaScript以外で書けても実行時はJavaScript
  • SassでCSSの表現の本質が変わらないのと同じ
  • 結局はJavaScriptを知らないと解決できない問題が存在

JavaScriptを学ぶ


書籍から学ぶ

初心者向けの決定版はまだわからない


書籍の読み方

英語が読めない人向け、英語技術書の読み方 | Web scratch

  • 章ごとなどノルマを決めて読む
  • 節ごとにメモを取る - 既知の事についてのメモは手を抜く - 気になることを調べてリンクを貼る
  • インプットアウトプット 1. 読む 2. 理解 3. 書く

学習テスト

学習テスト via Test-Driven JavaScript Development

  • 外で学んだ知恵の定着 * 他人のコード・論文・書籍からえた知恵の学習テストを書くと頭に定着しやすい
  • 奇妙なふるまいの調査 * ブラウザの奇妙なふるまいにハマった時に対処法を学習テストに記録しておくと、同じ所でハマる事はなくなる
  • 新しいブラウザの調査 * 書きためた学習テストは、新しいブラウザのふるまいの調査に流用できる
  • フレームワークの調査 * 新たに導入するフレームワークはまず学習テストを書いてみる * 本番コード前にフレームワークの使い方が身につく

オンラインのチュートリアル

なども参考に


コードリーディング


コードを読んで取り込み書きだす

  • 読む目的を定める
    • 先になぜ読むのかを決めておいた方がいい
  • 新しいことを知る
    • いいところをパクる
    • パターンを知る
    • クロスブラウザ対応処理(バットノウハウ多いけど)
  • 知ったことを取り入れたコードを書く
    • 書いて自分のものにする
    • 車輪の再発明で学ぶ

自分の場合は、コード = Greasemonkeyで有ることが多かった。


コードの質

一般的なWebサイトなら速度よりも可読性や保守性を優先した方がよい場合も多い。


まとめのまとめ

  • 見る(何を見る、どこを見る)
    • Web, ブラウザのアップデートも高速化
      • 新しい情報がどんどん増えている
    • ソーシャルサービスやSBMなどを上手く使って情報を得る
    • メールマガジンや週間のまとめサイトが急増
  • 知る(何を知りたい、探す、情報の取捨選択)
    • とりあえずぐぐってみる
    • 何が正しい情報なのかを知る
    • リファレンスサイトなどを上手く使う
    • テストケースやベンチマークは今を知るツール
  • 学ぶ(何からどう学ぶ、学習方法)
    • JavaScriptの本質を学ぶ事は大事
    • 学習テスト
    • 書いて学ぶ
    • コードリーディング

#おわり