首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么使用全局变量类(单例)的做法很糟糕?

为什么使用全局变量类(单例)的做法很糟糕?
EN

Stack Overflow用户
提问于 2013-08-23 19:37:32
回答 2查看 1.8K关注 0票数 6

我为之工作的公司有一个巨大的阶级(Globals.m),那就是单身人士。它主要存储一堆应该进入NSUserDefaults的BOOLs,但也有指向属于各种视图控制器的视频播放器的指针。我对iOS开发相当陌生(而且我是一个低等的实习生),但我从直觉中知道,这段代码的味道太高了。我如何解释为什么使用单例来存储所有变量是不好的?

编辑:,我不是说单身是坏的,我只是指在这种情况下。实际上,应用程序中的每个重要变量都存储在这个实例中。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-23 19:46:17

UIKit中的许多对象都是单子对象。UIApplication对象是一个单例。NSUserDefaults有standardUserDefaults单例。UIDevice currentDevice返回一个单例。

仅仅因为这是个单身孩子并不意味着这很糟糕。糟糕的是,当您开始将其他类中的功能绑定到您的单例对象时,这种功能根深蒂固,无法轻松地更改单例或受影响的对象。

我使用单例来存储我的非CoreData对象结构。我还定义了一些获得库目录、编码数据和键控归档的助手方法。因此,我可以在任何需要的地方引用主数组对象,也可以轻松地访问方法,否则只是复制和粘贴。

票数 4
EN

Stack Overflow用户

发布于 2013-08-23 19:43:08

Globals.m听起来并不像单例,如果是的话,它看起来只是用于配置目的?我想,一个装满#definesextern的文件也会这样做。没有更多的细节,很难知道你在搜索什么。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18410602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档