2011-04-07 34 views
2

写入多个模块化和可测试iOS应用我写使用目的C.建议用于使用目标C

iOS设备的应用程序看来编写的代码是紧耦合和再利用是很困难的。

任何使用Objective C编写更多模块化iOS应用程序的建议?特别容易测试。

回答

9

一些建议,这是我看到objc方案,作为共同的问题:

  • 青睐协议在子类的详细比一般objc开发者(很重要)

  • 青睐更小的物体,这是更专业

  • 最小化全局对象(例如单身人士)

  • 经常重复使用和测试

  • 实现并拥抱objc类型/运行时的动态性质。不要将你最熟悉的语言的习语用于objc。很可能你的程序会受到影响。

  • 代码重用/后端:支持C,C++,苹果的分布类型和协议

  • 存根包/在平凡的程序分库。这些应该建立独立。

  • 谨记你重新实现的东西,移动共同实施库

  • 守库小,有重点,同时也要注意自己的依赖。也希望在许多情况下可以使用该库。保持警告低,公共接口简单,并使用漂亮的冗长的描述性名称和前缀来避免平面命名空间中的冲突。

2

您应该编写面向对象的代码;用于编写模块化,可重用,可测试对象的所有标准最佳实践在Objective C中与在其他语言中一样适用。

是否有理由相信Objective C在这方面有所不同?

2

以下是一些建议:

  • 尽量把可重用的组件作为单独的库子项目。 XCode可以处理项目中的项目。
  • 使用类别来扩展或修改内置类的行为。组件与代码的其余部分是隔离的,并且非常容易测试
  • 请确保遵循MVC模式,并且不要使控制器膨胀。将应用程序逻辑放在模型类中,以便它们不依赖于视图,这使得测试变得困难。