JavaScript忍者になるには?[閉まっている]


8

メインの開発分野としてJavaScriptを選択し、HTMLおよびCSSとともに、一般にフロントエンド開発者として知られる開発者になりたいです。しかし、私はJavaScriptの専門家になる方法を知りません。私は多くの本を読んで、データ型、構文、ツールの使用法(IDE、デバッガなど)、jQueryなどを学習しました。しかし、有名なライブラリを含むいくつかの高度なJavaScriptコードを見ると、「私はそのコードを書くことができませんでした。」ここで何が問題になっていますか?私がしなかったのに、私はどのようなステップを踏むべきでしたか?私はプロのJavaScript開発者になるためにここで何かが足りないと感じています。私はまた、Yahoo Theaterでダグラス・クロックフォードの映画を含むトレーニング映画を見ました。


23
あなたはすでに衣装を持っていると思いますか?
JeffO 2011

なんて気の遠くなるような
ThomasX

1
DOM Scripting、本。次に、John Resigの内容を読み始め、jQueryのアーキテクチャーで何を行ったかの要点を理解できるように十分に学習します。これは基本的に、DOMのアダプター/デコレーターファクトリー関数であり、jqueryオブジェクトを可能な限り軽量(メモリ内)に保つために関数クロージャーを大幅に活用しています。新しい文章を理解しながら、意味がわかるまで、時々戻ってその文章を読んでください。ああ、そしてIDEを使用しないでください。あなたはそれなしで有能であり、情報に基づいた決定を下せるまではありません。
Erik Reppen 2013

回答:


19

あなたの答えは経験です。練習なしに上手になる方法は他にないと思います。練習として見たものと同様のライブラリを作成してみてください。読み続けますが、練習、練習、練習してください!


3
+1の経験、私は恐れています。他に方法はありません。仕事でそれを得ることができない場合は、自宅でペットプロジェクトを行うか、オープンソースソフトウェアに参加してください。尊敬するJSライブラリの小さなバグを修正するだけでも、大規模な学習体験になります。
トムモーガン

1
@Garyに感謝します。おそらく、その実践プロセスをより速くするためのいくつかのテクニックがあるのだろうと思います。あるいは、多くの開発者が馴染みのないJavaScriptの概念など、いくつかのショートカットがあるかもしれません。
Saeed Neamati

2
@SaeedNeamatiグッドパーツのような本がいくつかあります。また、stackoverflowの関与をお勧めします。私はjavascriptの質問に答えることから多くを学びました
レイノス

1
@Saeed Neamati-現在の制限を超えていると思われる可能性のあるものを試してください。あなたはあなたがどこまで行くのか自分を驚かせるかもしれません。私がこれまでに得た最高の学習経験は、私が自分の深みから少し離れて、プロジェクトを続けるためにいくつかの調査と学習を行わなければならなかったときです。
ゲイリーウィロビー

アルド・レイン中尉:「カーネギーホールにたどり着く方法を知っていますか?練習しませんか?」
MattyD

19

「私はそのコードを書くことができなかった」

本当に?まずお試しください。


2
これはとても良いアドバイスです!試してみて、まだ知らないことを学びましょう。それがあなたが成長する方法です。
ゲイリーウィロビー

彼らはそれを行うまで、彼らもコードを書くことができませんでした。
Yatrix

そして、Javascriptの6か月または12か月は、最初のステップを振り返り、「男、それは素人なのか」と考えます。練習。
アランB

5

おかしい、あなたはあなたの質問をこのように表現すべきです 基本的なJavaScriptに関するほとんどの本は、優れたコードを実現するためにJavaScriptの特定の側面を使用する理由と方法を理解するのに役立ちません。JavaScriptのより高度な側面とコーディングのベストプラクティスを本当に理解するのに本当に役立ったのは、JQueryのリードエンジニアであるJohn Resigの執筆でした。

http://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=John+Resig

特に:

プロJavaScriptテクニック

JavaScript忍者の秘密

これらは、高度なJavaScript機能の使用方法とその理由を理解するのに役立ちます。また、パターンとアジャイルの原則、特にベストコーディングプラクティスに関するより一般化された考え方については、Martin Fowlerの執筆を読むこともできます。


1
あなたは本当に質問に答え、「ただやる」よりもはるかに良いアドバイスを提供したと思います。これらのリソースを提供していただきありがとうございます。
Ryan Rodemoyer 2013年

4

あなたはプログラムしなければなりません...たくさん。
jQuery、Node.jsなどのプロジェクトのソースコードを調べます。CoffeScriptまたはClojureScriptを武器に追加します。
JavaScript MVCまたはBackbone.jsをご覧ください。

Google Closureがもたらすものを確認してください。
そしてもちろん、Mozilla Developer Networkをブックマークします。


4
CoffeeScriptとClojureScriptはそれぞれの立場にありますが、JavaScriptを学ぶのにまったく役立ちません。
レイノス2011

1
はい、わかっています。だからこそ、CoffeScriptまたはClojureScriptを武器に追加しました。これら2つのテクノロジーについて知っておくと便利です。
カイロン

4

このフィールドを選択した場合は、c / c ++ / c#/ java / etcよりも支払いが少なく、専門的でない/優れていると見なされるように準備してください。

これは通常、特に給与に関して当てはまります。本当に良いjs + html + cssコーダーを見つけるのはとても簡単ですが、本当に良いc / c ++ / c#プログラマーを見つけるのはちょっと難しいです。これは、私が働いている会社(従業員約300人)が現在直面している問題です。上記の言語をよく理解している学生でさえ、ベテランのJS開発者よりも高い給与が支払われました。

ほとんどのJS開発者はインターネットのチュートリアルから学び、オープンソースプロジェクトに参加します。これは非常に良いことです。JSを多用するFOSSプロジェクト(例として、gnome 3のフロントエンド開発)を見つけてください。それに貢献する。このようにして、ツールと言語の経験を積むことができます。

さらに、Amazonで優れた評価のある本を見つけて読んでください。ただし、コーディングは学習方法であることを覚えておいてください。したがって、読書以外に、開発を開始してください;)


1
保守不可能な混乱をすばやくハッキングできるjs / html / css開発者を簡単に見つけることができるように思えます。良い開発者を見つけるのはまだ難しいです。
ショーンマクミラン

1
優れたフロントエンドの人は、おそらくバックエンドの人よりも親切です-実際には、そこには多くのブードゥー教があり、その世界はバックエンドよりも速く負荷を変更しています。
Wyatt Barnett

3

私は上で言われたことに同意します、あなたはただ練習が必要です。ハイエンドのJavaScriptコードで使用されるデザインパターンを理解することも重要です。使用されたパターンとそれらがなぜ使用されたのかを理解すると、それがはるかに明確になると思います。 HarmesとDiazによるPro JavaScript Design Patternsは良いスタートです。また、OsmaniのEssential JavaScript Design Patterns for Beginnersもご覧ください


3

忍者は通常、農家や農民でありながら、シンプルだが卑劣なアイデンティティで変装した衣装を着ています。しかし、単純な人を真の忍者にするのは意味のある目的であり、それを脱ぎ捨てても自殺されることはありません。それを念頭に置いて、JavaScriptのサムライデーモンを見つけてみませんか?あなたが成功した場合、あなたは世界を他のコードファーマーにとってより良い場所にし、あなたがその過程で忍者になったことに気付くでしょう。それかあなたは死んでしまいます。

幸運を!


また、ほとんどの忍者は非常に速く吸って殺されました-しかし生き残ったものは生きた伝説になります;)
c69

2

私はJavaScriptではマスターとは呼ばないでしょうが、とにかくかなり良いです。次のような本を読んで理解し、コード化してください。

http://www.amazon.com/Pro-JavaScript-Techniques-John-Resig/dp/1590597273/ref=sr_1_2?s=books&ie=UTF8&qid=1320176633&sr=1-2

http://www.amazon.com/JavaScript-Good-Parts-Douglas-Crockford/dp/0596517742/ref=pd_sim_b_1

それは基本をカバーするでしょう。次に、フィールド全体を探索します。できるだけ学ぶようにしてください。Firebugでコードをデバッグする方法を学びます。(ある程度まともな)いくつかのJavaScriptフレームワークを学ぶ-JQueryが最も簡単です。多分Dojoツールキット、Mootools、プロトタイプ。JavaScriptフレームワークのソースコードを読んで理解してください。jQueryでプラグインをビルドします。モジュールパターンについて学習します。学ぶことはたくさんあります。

しかし、それらすべての最も重要なルールは次のとおりです。

コードを書いて、毎日自分を上手にしよう!

そして、何か良いことをするために最新のプラグインやフレームワークを必要とするフレームワーク中毒になるだけではありません。コア言語をマスターし、プラグインやウィジェットをゼロから自分で作成してみてください。あなたがそれをすることができないなら、あなたはまだ素晴らしくはありません。


2

間違いなく練習-しかし、私見、練習のために忙しい仕事をするだけではない方がいいです。解決する実際の問題を見つけます。達成するために何かクールなことを考え、それを書いてください。無料(慈善団体や非営利団体など)または安価な方法でJavaScriptの作業を実行してもらいたい人を見つけて、コードを記述します。言い換えれば、あなたの最善の実践は意味のある何かを行うことになります。

また、javascriptは非常に興味深く、非常に強力な言語だと思いますが、私は何年も前に受けた大学のCクラスで、以前またはそれ以降の1つのソースよりもプログラミング全般について多くのことを学びました。Cの学習は、コンピューターの考え方、ビット単位のバイト単位のメモリについて学習することで始まりました。私には、非常にしっかりした基本的なプログラミング手法を強調するかなりまともな先生がいました。別の言語を学ぶと言った男は完全に間違っていたわけではありません-別の言語を学ぶことはプログラミングに対するあなたの見方を少し変え、類似点と相違点を認めさせます。


1

典型的なWebアプリケーションで見つかるJavaScriptコードは、特にjQueryのようなフレームワークを使用している場合は、かなり簡単です。カスタムプラグインの作成は少し高度ですが、いくつかの基本的な概念だけが必要です。これはほとんどの目的に十分です。エンタープライズ環境では、既存のUIは通常ひどいため、インターネット開発のいくつかの簡単なテクニックでクライアントを感動させることができますが、実際には忍者レベルではありません。

javascriptを本当に知りたい場合は、システムの制限に遭遇し、より高度な手法を適用せざるを得ないような、もう少し難しいものが必要です。この種のコードのいくつかは、ブラウザーの互換性を処理する必要のあるフレームワークで見つけることができますが、これは主に解決済みの問題であり、作業にいらいらします。html5アプリにはもっと興味深いオプションがたくさんあります。通常はブラウザーでは実行できないものを実装してみてください。

これの私自身の例はgitクライアントです。Javascriptはバイナリデータをあまりうまく処理せず、単純な実装はUIを数分間ロックし、GCがトリガーされる前にメモリが不足するのに十分な速さで新しいオブジェクトを割り当てます。このようなものを最適化すると、コードを実行したときに何が起こるかを正確に知ることができます。この理解は、構造が不十分なコードでは不可能であるため、より一般的なアプリケーションにも適用できる明確な構造のJavaScriptを書く方法を学びます。


0

フィールドとJQueryで練習します。これは私ができる最高のアドバイスです。


-7

JavaScriptを第一言語として学習しないでください。また、JavaScriptライブラリにあるプログラミングスタイルをエミュレートしようとしないでください。ほとんどのJavaScriptプログラマーは、C ++、C、Javaなどの実際のプログラミング言語をあきらめたハックです。その結果、JavaScriptコードは、コメントされておらず、解読できないスパゲッティコードのごちゃごちゃです。私が知っているのは、私はC ++ / Java / C#ソフトウェアエンジニアとして働いており、現在JavaScriptの世界に入っているからです。

したがって、優れたJavaScriptソフトウェアプログラマーになりたい場合は、まず他のプログラミング言語を学び、次にJavaScriptに戻ってください。


4
暗黙の「C ++、C、Java」は、JavaScriptよりも優れた言語です。JavaScript が問題であることを暗示する。これらはすべて虚偽の陳述です。
レイノス2011

4
私はあなたがjavascriptの広大な機能、およびその言語が何をすることができるかを

@ stackoverflowuser2010それは誤りです。C ++とPHPには、JavaScriptとして何をしているのかわからないままハッキングしている非熟練のプログラマーがいると思います。確かに、jsのエントリへの障壁は低くなっています。ただし、解決策は、JavaScriptを学習して、いくつかの優れた言語を学習しないことです。そして私たちが優れた言語について話している間、人は代わりに自己を学びに行くべきです。これは、JavaScriptの学習に最も役​​立ちます
Raynos '24 / 07/11

2
ほとんどのプログラマーはどんな言語でも-吸います。JavaScriptとの違いは、ソースを表示して表示できることです。
ショーンマクミラン

1
-1:ただサポートされていない暴言。
kevin cline
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.