首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在iOS中创建您自己的自定义库?

在iOS中创建您自己的自定义库?
EN

Stack Overflow用户
提问于 2012-09-10 04:16:18
回答 2查看 1.6K关注 0票数 3

我对编程相当陌生,我想更有效地开始编程。尽管我可能会尝试,但我经常发现自己偏离了MVC模型。

我想知道,在使用xcode objc编写代码时,是否有任何保持代码组织的提示或方法?更具体地说(我知道你们喜欢这样:)我想

  1. 能够编写从一个项目到另一个项目的库或自包含代码。
  2. 以开源项目的形式与其他人共享我的代码
  3. 防止自己编写不符合适当结构的杂乱代码。
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-10 06:58:15

  • 使用较高的警告级别。干净利落。
  • 清除所有静态分析器问题。
  • 写一些单元测试。
  • 使公共接口保持较小。
  • 指定库的依赖项(例如,最小SDK版本和依赖库)。
  • 定期针对多个/受支持的OS版本进行编译。
  • 学习创建和管理静态库目标。这就是在另一个项目中支持和重用库所需要的一切(除非您将外部资源拖到图片中,这将成为一种痛苦)。
  • 没有全局状态(例如,单变量、全局变量)。
  • 对于多线程上下文中的支持要精确(更常见的是,这种并发应该是客户端的责任)。
  • 记录您的公共接口(可能您的私有接口也是…)。
  • 定义一个精确且一致的误差模型。
  • 你永远不可能有足够的错误检测。
  • 设置非常高的标准--为重用而构建它们作为参考实现。
  • 尽早确定库的粒度。这些应该是非常小和集中的。
  • 考虑为后端/核心库使用C或C++实现(这些东西可以删除)。
  • 请为库的objc类和类别建立和指定任何前缀。也要用好的前缀。
  • 最大限度地减少可见的依赖(例如,不要#import大量隐藏的框架)。
  • 确保它在不需要添加额外#import的情况下进行编译。
  • 不要依赖客户端将东西放在特定的位置,否则资源就会有特定的名称。
  • 对于内存消耗和执行成本要非常保守。
  • 没有泄漏。
  • 没有僵尸。
  • 主线程上没有缓慢的阻塞操作。
  • 不要发布一些东西,直到它经过了很好的测试,并且已经稳定了一段时间。Bug破坏了客户端的代码,如果它们不断破坏它们的程序,那么它们就不太可能重用您的库。
  • 学习、使用和学习好的图书馆。
  • 请某人(理想情况下,谁比你更有经验)检查您的代码。
  • 在项目中适当的地方使用/使用库。
  • 在添加功能之前修复bug。

别让这吓到你--这真的很有趣,在这个过程中你可以学到很多东西。

票数 5
EN

Stack Overflow用户

发布于 2012-09-10 06:19:22

有许多方法可以重用代码:

  • 将代码存储在公共目录中,并将该目录包含在项目中。简单,但可能存在版本控制问题。
  • 创建一个单独的项目,它构建一个静态iOS库,然后创建一个框架。设置更复杂,因为它需要脚本来构建框架目录结构。但易于在其他项目中使用,并能处理版本控制和设备/模拟器组合库。
  • 创建一个单独的项目,该项目构建一个静态iOS库,然后将其作为子项目包含在其他项目中。避免构建框架,结果可以得到更多的优化。

这是基本的3,当然,有一些变化,这些和你如何处理它们。你决定要做的很多事情都将取决于你要为谁做这件事。例如,我喜欢我自己的代码的子项目,但是对于我想提供给其他人的代码,我认为框架更好。即使他们是更多的工作要创造。另外,我还可以将它们与api文档的文档集一起打包,并将全部内容作为DMG上传到github,供其他人下载。

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

https://stackoverflow.com/questions/12345279

复制
相关文章

相似问题

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