我有一个用 C 编写的库,我想在 Mac 或 iPhone 上的 Objective-C 应用程序中使用它。
不幸的是,由于该库是由开源领域的个人编写的,因此文档非常稀疏且不完整。虽然我可以弄清楚如何使用库中的内容,但我并没有真正了解整个代码库。
我想做的是将库包装成 Objective-C 中一些易于使用和可转移的类。
- 有人对如何解决这个问题有任何建议吗?
- 关于获得图书馆结构的视觉层次结构的最佳方法有什么建议吗?
- 我将如何决定如何最好地构造包装器以实现可重用性和易用性?
任何和所有的帮助将不胜感激,谢谢!
我自己也做过几次这样的事。这可能很有趣——这是您修复(或至少隐藏)错误代码的机会!
您可以使用Doxygen http://www.doxygen.nl/获得代码的可视化层次结构(虽然我只将它用于 C++ 库,但它也适用于 C),或任何其他免费工具。
如果库的设计或文档不完善,则不要像底层库一样构建包装类。这是您考虑用户的观点以及他们将如何使用代码的机会。首先编写测试用例来弄清楚这一点,和/或与一些已经使用该库的人交谈。
与您正在做的事情相匹配的两种很好的设计模式是Adapter http://en.wikipedia.org/wiki/Adapter_pattern and Facade http://en.wikipedia.org/wiki/Facade_pattern.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)