对于经验丰富的开发人员来说,一般会有自己一套或大或小的自定义组件库、工具库等等,甚至是项目模版。但我们现在要脚踏实地,从零开始完整的去做一个项目,没有任何一项练习能比得上独立开发一个完整的应用。
设计稿拿到手以后,我们开始来分析项目整体的结构,给各个业务模块分好组。
确定好整体的大结构以后,接下来把根控制器、主要的一级页面和二级页面建立好,并把页面跳转关系连通。
本节开始描绘第一步的细节,即我们的首页,根控制器UITabBarController底部的样式,尽可能跟设计稿相符。
继续描绘app整体的风格,包括导航栏上各元素的颜色,返回按钮的样式等等。
我们引用第三方的组件,不必去深入研究每一个功能,快速找到适用于我们项目的功能才是高效率的体现。
页面的展示离不开数据,在做UI之前,我们要先打通app与服务器之间的数据通道,确保能给前端页面提供数据。
开发效率不只是建立在经验之上,我们要时刻去观察,有哪些工作是“重复的体力活”,这种看似枯燥没技术含量的事情,恰恰是最容易实现自动化的。
工具的打造切忌过度设计,要根据实际需求来出发,越简单,以后越容易调整和升级,另外适当的使用宏,能让代码更简洁整齐。
MVC架构下,我个人习惯先从Model层下手,把尽可能多的接口都调通了再开始去写UI。
网络接口到底是整合封装到一起好,还是分散在各页面控制器中好?一直以来都有很大的争议,特别是AFNetworking采用了block回调形式,让封装看似多余,看看长空老师如何选择。
精简代码和业务逻辑是每时每刻都要牵挂着的事情,本节手把手教你怎么去推导封装代码。
20分钟写完所有接口定义,思考一下,是不是又发现什么了?
在把数据交给页面控制器之前,我们要尽可能的确保数据的正确性,这样在调试页面错误的时候,可以迅速排查问题所在的范围。
每写完一个阶段的模块,都要用心去测试几遍,对自己负责,也是对团队中的战友们负责。