如何在iOS的Objective-C代码中使用命名空间?

15
我正在编写一款名为“Best Korea”的iOS应用程序,我的组织名称是“Srsly.co”。我将编写可重用的“新闻”库,以在我的应用程序中使用。
每个iOS应用程序都将在一个.h文件中拥有其自己的全局常量,并且库代码也将在头文件中具有其常量。我还将为这些项目中的每个测试进行测试。
这是标准做法吗?
在Ruby、Python、Java等语言中,我会按照以下方式设置命名空间:
co.srsly.bestkorea
co.srsly.bestkorea.test
co.srsly.newslib
co.srsly.newslib.test

据我所知,Objective-C的模式是让每个开发者选择两到三个大写字母,并在每个类名前面加上它们。所以在我的情况下,我正在考虑选择BK作为应用程序的类名前缀,NL用于新闻库代码?我的想法正确吗?
编辑:我正在考虑在我的应用程序代码中这里讨论的不使用命名空间。

2
是的,那听起来很合理。 - abellina
2个回答

36

你说得对,Objective-C 没有内置命名空间支持,常见的解决方案是在每个类上使用大写前缀。请注意,苹果公司已经声明两个字母前缀是为他们自己保留的,因此你应该为自己的类使用三个字母的前缀。否则,你提出的方法是正常的做法。


2
是的,那对我来说也是个新闻。 - abellina
啊哈,那么根据那个页面上的示例,我可以使用 SBK 作为应用程序代码前缀。 - Dogweather
1
是的,SBK似乎是一个不错的选择。就我个人而言,我使用ORS作为Open Reel Software(我的公司名称)。我认为更常见的做法是使用源自公司名称的前缀,而不是应用程序的名称,但这取决于您自己的选择。 - Andrew Madsen

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接