2009-07-17 7 views
0

コーディングスタイルのガイドラインが異なるAPIを、使用しているプログラミング言語にラップする場合は、言語スタイルガイドラインに準拠したインターフェイスを作成するか、 APIラッパーラッピングREST API - コーディングスタイル標準

具体例としては、ルビためのものであり、Pythonの変数は、通常、すべて小文字であるとJava/C#のキャメルケースにウェブサービスを有する、例えば標準

myVariable = 'Hello World' 

である使用が

my_variable = 'Hello World' 

を強調しますjsonで連絡先を作成する方法は

{contact: {contactId: 1, firstName: 'John', lastName: 'Smith', emailAddress: '[email protected]'}} 

たとえばd O君は(キャメルケース)で同じ変数名を持つクラスを作成

class Contact: 
    contactId = 1 
    firstName = 'John' 
    lastName = 'Smith' 
    emailAddress = '[email protected]' 

かの方法で

def create_contact(contactId, firstName, lastName, emailAddress): 
    # make remote request 

または要求

を作るときあなたはスタイルガイドライン、その後、秘密の変数名に従ってください

答えて

2

既存のAPIのラッパーを作成する場合、ラッパーのコンシューマーに公開する部分は、ラッパーを記述する言語のスタイルにする必要があります。

0

できるだけ早くあなたの言語のコーディング標準に戻ってきます。この方法では、システム内のすべてのコードは、Web APIのどこに由来していても同じように見えます。私は、あなたのシステムの中を旅している(あなたのケースでは)camelcasedキーでオブジェクトをすばやく見つけることができると信じています。

パフォーマンス要件が狂っている場合は、ラクダキャッシングされたキーを下線付きのキーに自動変換する汎用のAPI呼び出し元クラスまたはモジュールを作成すると考えられます。もちろん、これが間違っている状況(APIKeyと呼ばれるキーは通常a_p_i_keyになります)がありますが、これを知っている限り、APIラッパーでハードコードされた方法でこれらの特定のケースを修正できます。あなたの頭痛は最小限に抑えられ、コードスタイルは一貫しています

0

JSONを使用している場合、JSON構造に相当する言語を直接使用することができます。たとえば、dictやPythonのリストです。これは常に機能するとは限りませんが、しばしば適切なアプローチです。

これは、Python {'contactId':1、 'firstName': 'Justin'}などのキャメルケースを使用することを意味しますが、これは変数ではない識別子なので、あまり心配しません。

構造体を直接処理できるときは、関数とクラスの作成が非常に冗長です。

XML APIは別の問題ですが、JSONのポイントは軽量で、ネイティブ言語構造にマップすることです。

関連する問題