当前位置 : 主页 > 手机开发 > ios >

ios – swift中静态函数和单例类之间的区别

来源:互联网 收集:自由互联 发布时间:2021-06-11
我想创建一个类,其中将保留所有实用程序方法,并且这些方法将在整个应用程序中使用. 问题:1 创建一个单例类并保留所有必要的方法或者我应该创建一个所有函数都是静态的类是不错
我想创建一个类,其中将保留所有实用程序方法,并且这些方法将在整个应用程序中使用.
问题:1
创建一个单例类并保留所有必要的方法或者我应该创建一个所有函数都是静态的类是不错的.
问题:2
swift上面两种方法的主要区别是什么?
问题:3
它将如何影响iOS的性能? 当然这听起来很混乱,可以辩论.但是,从最佳实践中我可以提出一些建议.

Singleton通常用于创建资源密集型和一个计时器初始化,例如:数据库连接器,登录处理程序等.

实用程序类是只具有静态函数和变量的类.它不应该处理异步任务和昂贵的资源处理,如打开数据库连接器.

在您的情况下,如果实用程序正在执行一些资源密集型过程,则最好将其包装为单例.如果没有,那么我认为类中的静态函数更好.这也是因为,Swift将使用静态调度在类中调度所有静态函数.虽然Swift喜欢优化,但在Singleton中这不可能是真的.

就使用Objective-C运行时而言,Static Dispatch比Dynamic Dispatch快4倍.对于斯威夫特来说也是如此.但是,动态调度只需4纳秒.

我希望这能让你清楚.

网友评论