2011-08-10 11 views
2

私の状況はこれですが、JavaScriptに大きく依存するアプリケーションでは、小さな問題の修正やデバッグの問題があります。他のタスクの1つは、アプリの理解を容易にし、スケーラビリティを高めることです。新しい機能や機能が追加されると、現在のアプリはますます変更や更新が難しくなっています。 1つの関数を変更すると、実際には別の関数で変更することができます。私の考えが正しいと、その方向にそれを取った場合大きなJavaScriptベースのアプリケーションをどのように変換する必要がありますか?

私の最初の考えは...それがあれば/ thens、スイッチなど、機能のそのちょうど束をスタンドとして、指向JavaScriptオブジェクトを作るために

です誰かがモデルやフォーマットを提案して、アプリケーションをより良く解体するために使うことができます。私は何をオブジェクトに変えればいいのか、メソッドやプロパティなどは何に変えればよいのかなど...私はちょっとしたガイドが必要です。

私の思考が正しくなく、その方向に進むことは道ではない、誰かが私に別の方法についていくつかのアイデアを与えることができます。

ありがとう、

+3

この質問は少し曖昧です。私たちは実際にあなたに何か有用なことを伝えるためにあなたのコードを見る必要があります。 IMOでは、この質問は[Code Review](http://codereview.stackexchange.com/)サイトに適しています。 –

+0

残念ながら、コードは独自のもので、私は約5000行のコードで過去のことが必要です。それにかかわらず、それはまさにコードに関するものではありません。 – dv310p3r

答えて

2

jQueryライブラリを画像に導入することを検討します。

いくつかの領域を変換して、どれくらいのコード縮小が期待できるかを確認してください。

+0

私はこれを行うことを最も確かに考えており、それは良いスタートです。 – dv310p3r

1

私は本当にあなたがのようなコードに見えるしているので、私は本当にあなたにいくつかの一般的なアドバイスよりも良いものを与えることができないのか分からない:

  • は、jQueryのように、MooToolsをJavaScriptライブラリを使用して、またはPrototype。私はjQueryをお勧めしますが、私は本当に他の人を非常によく使っているとは言えません。ここでのポイントは、皆さん自身がやるのがむしろ面倒な一般的な作業をはるかに容易にするライブラリであるということです。

  • 同じまたは類似のコード行が表示されたら、それらの行を新しい機能にリファクタリングします。

  • マジックナンバーを避けてください。コードのスケーラビリティと読みやすさが低下します。たとえば、希望の長さを参照する場合は、100になります。100を変数に割り当て、変数を参照してください。場合によっては、コードをスキャンして数字を探すことができます。変数宣言以外にも、ときどき1,0-1、または2以外の数字はあまり表示されません。同じことが魔法の弦にも当てはまります。

  • すべての設定データコードを1か所にまとめておくと、簡単に変更できます。あなたはそれの中にすべてのデータを持っている全く別のファイルを持っているかもしれません。

  • オブジェクトに関連する変数を入れます。例えば、xCoords,yCoords、およびzCoordsの代わりに、x,yおよびzをそのプロパティとするcoordsオブジェクトがあります。実際にはスタンドアロンのグローバル変数はあまり多くありません。

  • 一貫したコードスタイルを持ち、分かりやすい名前を付けるようにしてください。これだけでコードを読みやすくすることができます。

実例としては、このsmall code projectを見て、どのようなことが改善されたかを見てください。 Code Reviewサイトでアクティブにすることで、コード改善のスキルを高めることができます。宣言型のイベント ハンドリングと可算機能、ビューの豊富なAPIとの結合キー値およびカスタムイベント、コレクション と 提供モデルによってはJavaScriptを多用するアプリケーションに

+0

ありがとう、それは私が探していたアドバイスのようなものです。非常に感謝し、私はそれを練習に入れます。 – dv310p3r

+0

@ user578994、あなたが役に立ったことをうれしく思います。スタックオーバーフローでは、それを確認する最善の方法はアップボーディングと受け入れです。 :) –

0

Backbone.js

バックボーン供給構造、および RESTful JSONインターフェイス経由で既存のアプリケーションにすべて接続します。

バックボーンは最適なソリューションです。あまりにも侵略的ではありません。バインディング、モデル、およびカスタムイベントが本当にあなたがそのコードを順番に取得するのに役立つものがなければ、他に何もありません。

関連する問題