为 REST API 构建 Java SDK 的最佳实践

Ale*_*one 5 java rest sdk

我即将针对 REST API 开发 Java SDK,并想知道构建它的最佳实践方法是什么。我查看了 Google,还使用了许多连接到 REST API 的 SDK,但从来没有太多一致性。我遇到了一些我觉得有趣的模式,想知道哪一种可以被视为最佳实践(如果有的话),或者是否有替代方案?

我提供了示例/伪代码以方便起见。

1)模型/请求/客户端都是分开的。调用示例:

Client client = new Client( ... credentials ... );

try {
    Something obj = client.post( new PostSomethingRequest( ..params... ) );
} catch( Exception oops ) { ...handle... }

try {
    Something obj2 = client.get( new GetSomethingRequest( id ) );
} catch( Exception oops ) { ...handle... }
Run Code Online (Sandbox Code Playgroud)

2)模型和请求是捆绑在一起的,而客户端是分开的。调用示例:

Client client = new Client( ... credentials ... );

try {
    Something obj = client.post( new Something( ..params... ) );
} catch( Exception oops ) { ...handle... }

try {
    Something obj2 = client.get( new Something( id ) );
} catch( Exception oops ) { ...handle... }
Run Code Online (Sandbox Code Playgroud)

3)模型包含一切。调用示例:

Client.setCredentials( ... credentials ... );

Something obj = new Something( ..params... );
try {
    obj.post();
} catch( Exception oops ) { ...handle... }

try {
    Something obj2 = Something.get( id );
} catch( Exception oops ) { ...handle... }
Run Code Online (Sandbox Code Playgroud)

如果有更好的方法来构建它,我也很高兴听到它们。

Mor*_*itz 1

如果您为特殊的 REST API 构建 SDK,我将使用代表 REST 服务调用的方法名称,并且不会那么通用。