gpt4 book ai didi

angularjs - Typescript 和 AngularJS - 静态方法与服务

转载 作者:搜寻专家 更新时间:2023-10-30 21:00:18 24 4
gpt4 key购买 nike

TL;DR:与 Angular 无关的静态基本功能 - 作为 AngularJS 服务实现与普通静态导出类/方法相比?

长版:我已经使用 TS 编程大约一个月了,因为我们正在重构我们的应用程序以使用 TS(为 angular 2.0 做准备)。当开始了解我们的一些基本 angular.service 时,我在想——因为实现静态类和方法非常容易——也许我们的一些服务根本不应该是服务。当然,任何与 Angular 有关的功能都必须以某种方式作为服务来实现。例如,ColorConverter 或 ColorPicker——今天我们应用程序中的 angularjs 服务实现了静态逻辑,不会改变或与 Angular 或任何共享的外部资源无关——可以很容易地替换为导出静态函数的静态模块。我办公室有人提出支持 angular.service 的一个论点是,以后我们可以很容易地模拟这种逻辑。但是为什么我要模拟不会改变并且不会访问任何外部资源的静态逻辑呢?一分钱的想法。

最佳答案

这个问题在Java或其他语言中都是一样的。静态方法很难扩展和模拟为什么你应该使用服务而不是静态方法。

例如,如果您对 ColorConverter 使用静态方法,则您无法为应用程序中需要的新功能扩展其行为(支持其他颜色范围或其他)。

以下答案为也适用于 TypeScript 的其他语言添加了一些元素。

Java static methods pros & cons

When to use static classes in C#

关于angularjs - Typescript 和 AngularJS - 静态方法与服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39011788/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com