2011-01-24 8 views
7

JavaScript APIを設計するには、どのような方法が良いでしょうか?JavaScript API開発の優れた方法

私は、JavaScriptの新機能であり、主に「JavaScript:The Good Parts」から、その言語の重要な機能を学んでいます。現在、統計を教えるためのWebベースのツールを設計しています。私はJavaScript APIを設計する方法を理解していないので、コードベースは部分的に扱いにくくなってきています。

私の背景はJavaとC++であり、これらのインターフェイスを個別に実装するのに慣れています。明らかに、これはJavaScriptではうまくいきません。

ご協力いただきありがとうございます。

更新:ここでは、ツールの最終バージョン:http://www.lock5stat.com/statkey/index.html

+2

これは時計を付けることに興味があるかもしれません:http://ejohn.org/blog/building-a-javascript-library/ – karim79

+0

@ karim79ありがとう、私はこのようなものを探していました。 – Rich

+1

@ karim79、ちょうどその話を見終わった。それは非常に洞察力があった。 – Rich

答えて

1

私の意見では、jQueryを使用している場合は、アプリケーションをjQueryプラグインとUIウィジェットに分割することをお勧めします。プラグインは、コードを整理するのに最適な方法です。他のアプリケーションで再利用することもできますし、個別にリリースすることもできます。

プラグインのツリーとしてアプリケーションを記述することができます。 C++/Javaのクラスのようなプラグインについては、継承ではなく継承で考えることができます。コードについて

注:あなたがのdocument.createElementを使用MAIN.bootstrapPlot機能で、あなたは残りのコードのようにjQueryを使用する必要があり、そしてキャンバスのためCanto libraryをご確認ください。

+0

私のコードを見ていただきありがとうございます。 :) – Rich

+0

また、Cantoを指摘してくれてありがとう、構文とチェインが改善されています。残念ながら、IEではうまくいきませんでした。それは私のためのデングブレイカーです。 – Rich

1

私は言語機能を念頭に置いて、言語に関係なく、任意のAPIを開発するなど、その同じだと思います。

  1. あなたはなど、

  2. ドキュメントをインタフェースはJavaScriptであまり意味がありませんが、それはオブジェクト指向である、あなたは「クラス」にあなたの機能を分割することができるように、デザインパターンを使用して指摘するように。任意のAPIを文書化するのと同じように、javascript 'クラス'をドキュメント化することができます。

  3. jsのインターフェイスまたは抽象クラスのネイティブサポートはありませんが、依然として原則を適用できます。たとえば、エラーをスローするメソッドを持つオブジェクトを定義することによって '抽象クラス'を作成できます。そうすることで、サブクラスが正しく実装されていないとエラーになります。インタフェースを使用するものであれば、必要なメソッドがinit上にあるかどうかを簡単に確認できます。いくつかのjsの人々は、jsが緩く型付けされ、動的であることを指摘し、このように使用すべきであることを指摘しています。ジャバスクリプトのようなという概念がないので、私は引用符で「クラス」を入れ

注意。もう1つのことは、SenchaやjQueryのような既存のAPIを見ていくつかのアイデアを得ることです。 SenchaはAPIのように、サーバーサイドの開発者が(ドキュメントを見て)慣れていると感じています。

+0

ちょっとメモ:John ResigのGoogleがjQuery APIについて話をしました.JQuery APIを使用して、JavaScriptを使用してドキュメントを使用するOO環境に強制すると、表現の自由の一部が取り除かれます。興味深いのは、コールバックや関数に渡されるオプションなどを文書化することが難しいために、ドキュメンテーションをXML文書として開発したことです.APIを直接見ていただきありがとうございます。ここに、洞察を深めたビューソースであるjQueryのXMLバージョンへのリンクがあります:http://api.jquery.com/api/ – Rich