快速搭建一个成熟,强壮的App框架【转载】
2015-11-26 16:02
711 查看
App框架搭建
招聘信息:iOS 研发工程师
iOS开发工程师
iOS开发实习工程师
新浪微博-Android开发工程师&iOS开发工程师
美术设计师(2D)
UI设计师
cocos2dx手游客户端主程
手游JAVA 服务器端主程
Android开发工程师
iOS开发工程师
Cocos2d-x开发工程师
本文是投稿文章,作者:衡成飞(博客)
一个App,何为优秀?
产品本身是一个维度,另外一个维度,我想应该是技术层面。
App的框架,如大楼之根基,好的框架对于开发,拓展和维护可以起到事半功倍的效果,其重要性不言而喻。
今天分享一下自己在搭建框架时的经验,希望大家多提意见,一起进步成长。
以下是常见的APP框架结构,此Project中包括自定义的UITabbar、Json反序列化、网络请求异步加载、自适应cell高度以及圆角图片等等。
下图是已经搭建好的项目结构
App结构如下
常见的APP框架大多只有一个Project,包括了所有的业务功能实现。
其缺点是,对于一个稍微大型的APP,结构显得较为复杂,不利于后期的开发和维护。
以下划分,是我个人的一些理解,不足之处还请指教。
※ APP
大的层级划分
Classes---所有开发文件放在此
|-----Common----本app中常见的定义和操作
|-----Logic----所有业务功能相关文件
Third---所有第三方依赖(不支持cocoapod的)
另外依赖下面的IOSModel,IOSCommon,IOSView三个framework。
※ Model(Dynamic Framework)
所有的Http接口模型对象。
此framework作为Client和Server的桥梁,只需关注接口的数据格式。
另外包括Json反序列化为Model的过程,以后若要替换第三方,只需修改此framework即可。
※ Common(Dynamic Framework)
通用的操作,如网络请求,Extension等。
此framework,包含了和业务无关的通用的操作,并对第三方做了再次封装。
若开发其他app,只需引用此framework即可。
※ View(Dynamic Framework)
自定义的View,如圆角图片等(Storyboard可直接设置,不需要编写代码)
CocoaPods依赖的常见第三方库
关于iOS9适配问题,此工程中也已经全部解决。
1:BitCode问题
2:非Https请求
3:第三方登录问题
以上Project下载路径:http://git.oschina.net/hengchengfei/IOSTemplate
原文传送门:http://www.cocoachina.com/ios/20151126/14455.html
相关文章推荐
- Google Android SDK 开发范例大全 第二章 阅读小笔记
- 开源库ZXing加入xcode工程报错几个原因及解决方法
- android Log.isLoggable步骤的使用
- Android 与 SQLite
- Appium中部分api的使用方法
- iOS 学习日志:infoplist常用设置
- StandardWrapper.Throwable java.lang.NoSuchFieldError: IS_SECURITY_ENABLED
- [置顶] 微信支付paysignkey设置问题
- 浅谈Swift2.0对optional value的安全处理,慎用问号叹号"?!",消除swift项目里的"?!"
- 151126Tint Color的理解和APP简单的主题化
- Unity3D爬坑手记——Prefab篇2
- Android AIDL Service
- IOS触摸事件处理(如何处理多个触摸点)
- unity 实现炸弹人放炸弹后只进不出的一种方法
- iOS进程间通信之CFMessagePort
- win10搜索不到app解决方案
- android自学错误梳理
- iOS屏幕旋转
- Android Studio报错
- Android广告和发布的市场