加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Angular 2(ng2) – 服务vs util,何时使用哪个?

发布时间:2020-12-17 17:27:14 所属栏目:安全 来源:网络整理
导读:在查看了许多不同的论坛帖子和示例项目之后,人们似乎在服务或实用程序之间选择相同类型的功能.到目前为止我所读到的是人们说服务更好,因为依赖注入会使测试变得更容易.其他人说utils更好,因为它们更快.我想知道是否有任何类型的首选规则何时使用服务vs util,
在查看了许多不同的论坛帖子和示例项目之后,人们似乎在服务或实用程序之间选择相同类型的功能.到目前为止我所读到的是人们说服务更好,因为依赖注入会使测试变得更容易.其他人说utils更好,因为它们更快.我想知道是否有任何类型的首选规则何时使用服务vs util,为什么?

以下是从加载的数据中提取表列的示例:

服务

export class TableService {
  getColumns(data:Array<any>):Array<GridColumnInterface> {
    let columns:Array<GridColumnInterface> = [];

    data.forEach((column:any,index:number) => {
      columns.push({
        headerName: column.name,field: String(index),hide: column.isHidden,class: 'text-center'
      });
    });

    return columns;
  }
}

UTIL

export class TableUtil {
  static getColumns(data:Array<any>):Array<GridColumnInterface> {
    let columns:Array<GridColumnInterface> = [];

    data.forEach((column:any,class: 'text-center'
      });
    });

    return columns;
  }
}

那你会选择哪个?为什么?

解决方法

如果您关心可维护性和可测试性,请使用服务.

如果遇到分析显示使用该服务占用了大量CPU资源的情况,那么切换到util-class并进行基准测试以获得正确的数字,使用util-classes运行应用程序的速度有多快.如果这会对您的应用程序产生影响(非常不可能btw),那么将该服务类更改为util-class.我会考虑其他一些过早的优化.

我相信,当您能够减少应用对服务器的请求数量时,它将为您的应用程序的用户体验做出更多贡献,然后您将能够使用service vs util.

Angular2 AoT无论如何都将DI代码转换为静态代码,因此性能改进的可能性不大.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读