Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iPhone——上下文参数与全局变量_Iphone_Global Variables - Fatal编程技术网

iPhone——上下文参数与全局变量

iPhone——上下文参数与全局变量,iphone,global-variables,Iphone,Global Variables,在我的iPhone开发中,我总是使用全局变量来处理很多事情。我的新工作中的样式指南说我们应该使用上下文参数。所以我需要弄清楚这意味着什么以及如何做到这一点 有谁能更详细地解释一下这意味着什么?或者给我指出一些这样工作的代码 谢谢听起来可能在命名上有冲突。根据的这个定义,他们似乎关心在会话期间存储全局状态。也许,您可以在NSUserDefaults中使用“contextParameters”NSDictionary来存储全局变量。在某种程度上,您的全局变量可能需要全部导出以进行调试,从长远来看,为

在我的iPhone开发中,我总是使用全局变量来处理很多事情。我的新工作中的样式指南说我们应该使用上下文参数。所以我需要弄清楚这意味着什么以及如何做到这一点

有谁能更详细地解释一下这意味着什么?或者给我指出一些这样工作的代码


谢谢

听起来可能在命名上有冲突。根据的这个定义,他们似乎关心在会话期间存储全局状态。也许,您可以在NSUserDefaults中使用“contextParameters”NSDictionary来存储全局变量。在某种程度上,您的全局变量可能需要全部导出以进行调试,从长远来看,为了保存状态,这可能是有用的。

样式指南可能只是泛泛地说,根据变量的使用上下文来保持变量的作用域。例如,如果您有一个类实例生命周期所需的变量,则将其作为该类的成员变量。如果它是应用程序生命周期所需的东西,则将其放在应用程序范围内的对象中,而不是全局变量。

如果您使用的全局对象可能是一个包含所有以前全局变量的大型C结构,而不是单个裸露的全局变量,则可以复制该对象,序列化它以保存它或创建统一的核心转储,最终添加setter/listeners等


如果您根据共享范围或实例/结构变量分组所需的上下文将全局对象拆分,那么分数对象可能最终成为MVC代码重新分区的M部分的良好候选对象,以实现更好的重用性、可扩展性和可扩展性,等等。

问你的新同事他们所说的特定概念是什么不是最好?我问了,但我真正需要的是一个代码示例,他们拥有的不是iPhone,而是我所知道的iPhone。一般的想法是,如果你有一个变量,应该有一种方法来创建多个变量。因此,例如,如果视图控制器调用模型对象以获取用于填充视图的信息,那么应该有一种方法可以拥有多个模型对象。我得到了这么多。我不明白的是如何构建我的整体计划,使事情以这种方式进行。我习惯于拥有一个所有东西都存在的单例模型对象。这将不再有效。我不确定我是否理解,但您的模型对象的结构在编译时已知吗?例如,它是否可以表示为NSManagedObject并存储在SQLite存储中?如果是这样,那么您可以使用一个数据模型并用该数据模型的实例填充您的商店。换句话说,核心数据是否值得探索?