いくつかのツールが必要です。
まず、実際のデバッガーを入手します。Chromeに組み込まれているものを使用しています。Firefoxのアドオンとして利用可能なSafariとFirebugに組み込まれている同様のものがあります。これにより、ブレークポイントを設定してコードをステップ実行し、何が起こっているかを正確に確認できます。
次に、 jsLintを介してコードを実行することに非常に慣れます。これにより、多くの明らかなタイプミスが示され、初日から堅牢なコードを作成するように促されます。
第三に、モードで書き込みを開始しstrict
ます。これにより、明らかなタイプミスを防ぎ、良い習慣を身に付けることができます。
第四に、必要に応じて使用console.log()
します。デバッガーを作成すると、その出力は、jsFiddleページを含むブラウザーの任意のページのデバッガーのデバッグコンソールに表示されます。jsFiddleの適切なフレームでデバッガーを呼び出す必要があります。そうすれば、正常に動作します。私は通常のデバッガーとconsole.log()
常にjsFiddleの両方を使用しています。jsFiddleとデバッガーでブレークポイントを設定する独自のコードを見つけるには少し時間がかかりますが、見つけたら簡単に使用できます。
第五に、javascriptは単にC++ではありません。構文は非常に馴染みがあるように見えますが、無名関数とクロージャ、オブジェクトとプロトタイプを使用する方法は大きく異なります。JavaScriptを学ぶ前に、何年もの間C ++でプログラミングしてきた私は、C ++でさらに多くの作業を行った、JavaScriptで今できることを非常に高く評価していますが、脳を新しい考え方に変えるには時間がかかりました。私は、JavaScript開発の最初の数年間、JavaScriptで目標を達成するためのより良い方法を学ぶだけでなく、C++技術をエミュレートしようとして多くの時間を費やしました。
第6に、エラーを検出するコンパイラがないため、コードの記述方法とテスト方法を変更する必要があります。C ++の時代、何かをリファクタリングする必要があったとき、たくさんの変更を加えてから、構文を修正するために必要な他のすべての場所をコンパイラーに見つけさせることができたのを覚えています。javascriptではそれを行うことはできません。大量の変更を行う場合は、jsLintを実行していくつかの問題を見つけることができます。次に、すべてが機能することを確認するために、文字通りすべてのパスを実行する必要があります。少し苦痛です。
第七に、ユニットテストのための戦略/ツールを見つけます。プロジェクトの長さが数個を超えると、重要な変更を加えたときにいつでも実行できる単体テストを構築することで大きなメリットが得られます。どちらも、単体テストがない場合よりもはるかに短い時間で問題を見つけることができます。また、単体テストですべてが再び働いています。将来的に何度も配当を支払うのは、前もって余分な作業です。