https://www.jianshu.com/p/f2bc7d155a86

阅读 7858

视频地址 如果文章不详细,点击看操作视频

 项目需求:代码抽层,业务逻辑和数据处理要高度抽离,模块化,需要将model 层 和 network层抽离出来。所以,就考虑建一个公共工程,每次新建项目,只是需要依赖这个工程就行了,代码的模块化之后我们可以对每一个模块持续优化集成,便于实现一些更加复杂的需求和结构设计。
思路设计:①MonkeyApp,用于存放公共的库。②MonkeyAppDemo用于写demo和示例。
具体步骤:
1、创建MonkeyApp工程,注意这里被依赖的工程要是Cocoa Static Library。
 
psb.png

2、创建MonkeyAppDemo工程。在MonkeyAppDemo上面右键,添加文件,选中MonkeyApp.xcodeproj,建立依赖关系。

 
1__#$!@%!#__psb.png

3、在MonkeyAppDemo里面import相关的类会出现找不到的error,会编译错误。需要进行下面的操作:

 
2__#$!@%!#__psb.png

4、编译一次还是有错误。还是编译还出现找不到相关的文件。这个时候可以判断的是,编译的结果没有能够正确的依赖,进行下面的步骤 ;添加target的依赖关系,保证编译MonkeyAppDemo的时候先编译MonkeyApp。选中MonkeyAppDemo Target,然后选中其Build phases选项,添加MonkeyApp target。

 5:如果需要引入MonkeyApp中的图片资源,需要copy file选项勾选

 6:存在category的时候,使用category会导致Crash解决办法是在Sample里面添加编译的命令
 
4__#$!@%!#__psb.png

7:最终效果,这样就可以完成model层和network层的抽层了。

 
5__#$!@%!#__psb.png

最新文章

  1. 一条代码解决各种IE浏览器兼容性问题
  2. Volley设计思想和流程分析
  3. RestController 和Controller的区别
  4. Android View 如何绘制
  5. 刚体Collider包围测试
  6. PCL点云库:ICP算法
  7. 搭建XMPP协议,实现自主推送消息到手机
  8. Mvc项目右键没有控制器选项
  9. 在Eclipse中添加添加一些有助于开发的插件
  10. GUI编程笔记(java)04:GUI(HelloWorld)窗体案例
  11. 【转】Notepad++ 快捷键 大全 官方整理过来的
  12. 扩大或缩小undo表空间
  13. 1.QT中的容器QVector,QList,QSet,QMap,QQueue,QStack,QMultiMap,QSingleList等
  14. 仿微信的IM聊天时间显示格式(含iOS/Android/Web实现)[图文+源码]
  15. android SDK 安装
  16. 给 layui upload 带每个文件的进度条, .net 后台代码
  17. hasura graphql-engine &&patroni docker-compose 环境运行
  18. IntelliJ IDEA maven库下载依赖包速度慢的问题
  19. FileInputStream与FileOutputStream类 Reader类和Writer类 解析
  20. C++ 局部静态变量,全局变量,全局静态变量,局部变量的区别和联系

热门文章

  1. WEB-INF目录与META-INF目录的作用(转载)
  2. ZooKeeper Distributed lock
  3. MySQL关于GTID的一些功能限制
  4. 题解 UVA1335 【Beijing Guards】
  5. frm、myd、myi、opt、par文件
  6. Python(一):一行解法参考
  7. 路飞-自定义User表和Media配置
  8. 关于mybatis中sql映射文件模糊查询的使用
  9. C语言程序的错误和警告
  10. 从centos7镜像到搭建kubernetes集群(kubeadm方式安装)