2012-04-15 3 views
2

私はウェブサイトを含むプロジェクトに取り組んでいます。その後、モバイルアプリケーション(ほとんどの場合、PhonegapやSenchaのようなクロスプラットフォームツールを使ってビルドされます)。ウェブサイトのバックエンドとモバイルサービス層は同じAPIを使用する必要がありますか?

アプリケーション全体が大量にデータ駆動されており、そのすべてがWebサーバー上のMySQLデータベースに格納されます。私は、モバイルアプリケーションのサービスレイヤーとしてREST APIを設定することを知っていますが、私はそれについてはわかりません - メインWebサイトでもこのAPIを使用する必要がありますか?

私は自分のドッグフードを食べるつもりならば、APIを最優先にするので、私がプロジェクトを始める前にこれを知る必要があります。

重要な場合 - APIはサードパーティの開発者に公開されません。

+0

@PST:手元にある問題の詳細な説明に変更されました – xbonez

答えて

4

はい、ウェブサイト用のAPIを使用する必要があります。コードベースを単純化し、コードを再利用することを奨励します。これは、2つではなく1つのAPIのみを処理するためです(REST + MySQL)。さらに、一度に念頭に置いておくべき一組のAPI呼び出ししかないので、開発者(あなたも含めて)の生活が楽になります。

また、モバイルアプリケーションをHTMLで構築することもできます(おそらくPhoneGapを使用しています。最近はオープンソースで、Cordovaに名前を変更しました)。ウェブサイトでREST APIが使用されている場合は、Webコードをモバイル向けのHTML5に簡単に移植できます。

Nitpick:これは本当に自分のドッグフードを食べることではありません。 Dogfooding typically refersは、開発者ではなくユーザーの観点からプレリリースコードを使用して、バグを見つけやすくしています。

+0

ありがとうございました。それは間違いなく、単一のAPIだけを扱い、開発するためには「きれいに」聞こえる。 – xbonez

6

確かに、どうですか?つまり、テストして監視するエントリーポイントが1つしかないことを意味します。これはDRY principleに続き、消費するとAPIデザインが向上することを奨励します。

関連する問題