API要求良好做法

时间:2018-06-23 00:01:29

标签: api architecture dart mobile-development

我正在开发一个移动应用程序,其中有一个请求类负责将请求发送到服务器。有什么好习惯,可以在访问它的类的构造函数中初始化此请求类,然后​​调用该函数,或者将api函数声明为静态,以便无需事先初始化即可调用这些函数?

1 个答案:

答案 0 :(得分:0)

如果您希望请求共享实例变量(例如http.Client),则应首选构造函数变体。正如ryanwebjackson所说,这也使测试更加容易。如果它们只是不共享信息的功能的集合,那么静态方法就可以了。

如果您担心实例化多个资源密集型对象,则可以创建可以懒惰地初始化昂贵任务的getter,例如

abstract class Request {
  final Client client;
  var _loadsOfData;

  Request(this.client);

  Future get loadsOfData async => _loadsOfData ??= _fetchLoadsOfData();
}