Android Retrofit Design Patterns

Ich verwende Retrofit, um mit meiner REST-API zu interagieren, und habe mich gefragt, ob jemand Konstruktionsvorschläge hat.

Meine App enthält die folgenden Pakete:

modelsDienstleistungeAktivitäte fragmente

DasDienstleistunge Paket enthält die Schnittstellen für Retrofit. Beispielsweise

public interface FooService {
    @FormUrlEncoded
    @POST("foo/do")
    @Headers("Content-Type: application/x-www-form-urlencoded; charset=UTF-8")
    Call<FooBar> do();
}

Models enthält ... nun ja, die verschiedenen Modelle. Zum Beispiel, FooBar. So weit so gut - genau wie in der Retrofit-Dokumentation.

Ich habe eine API-Klasse erstellt, die die Retrofit-Build-Logik Retrofit retrofit = new Retrofit.Builder() etc) und legt ein statisches Feld frei: retrofit.In meinen Aktivitäten kann ich meine Anforderungen dann wie folgt ausführen:

FooService service = API.retrofit.create(FooService.class);
Call<FooBar> call = service.do();

try {
    retrofit2.Response response = call.execute();
    // ...do stuff...
} catch(IOException) {}

Und hiermit kommt meine Frage: Wäre es besser, obiges weiter zu abstrahieren? Damit ich das nicht überall wiederholen muss? Zum Beispiel so etwas wie:

MyOtherFooService service = new  MyOtherFooService();
FooBar fooBar = service.do();

Irgendwelche Gedanken? Empfehlungen?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage