最近,刚做完了一个经典的项目:疯狂食材。
首先先看一下软件设计的几个界面:

在开发过程中,建立相对应的文件夹来管理代码文件是非常重要的。
首先项目开始的时候,先要使用导入你要用到的第三方类库,本次项目所要用到的第三方类库如下:
:用于 络的异步请求
:用于异步加载的图片和本地缓存加载的图片
:实现毛玻璃的效果
:用于数据库的处理
:用于微信分享
以下两个第三方类库,是在code4app或github下载,直接拖拽到项目的:
:菊花加载器
:实现地球的3D选择效果
1.常用的功能封装成工具类
因为疯狂食材是基于 络请求的基础上的,所以每个页面都离不开 络请求,那么既然如此,我们就应该封装一个类,里面提供请求的方法,以下是本次项目中封装的 络请求方法:
在 络请求中,本人使用了一个第三方类库进行处理,那就是 。当然,在本次项目中,本人不仅仅是封装了这个工具类,还有以下一些工具类:
:用于数据库的操作
:用于 络的操作
:对于数组的一些处理
:对于图片的一些处理
以上的一些工具类,全都放在一个Tools文件夹,方便项目的管理,当然这个Tools文件夹是虚拟的,在实际中并不存在。
2.布局过程中要学会使用xib和代码结合,从而实现快速的布局
.在疯狂食材的项目中,基本上都是使用tableView布局的界面,既然是使用到表视图,那么就肯定会涉及到自定义cell,如果tableView中的布局是固定不变的,我们就应该选择xib进行快速的布局,而对于动态变换的布局,我们应该使用代码的方式自定义cell。当然,这只是我从项目中的体会罢了。
3.善于利用UITableViewControoler
在疯狂食材这个项目中,有很多页面都是由tableView直接布局的,可以直接利用UITableViewControoler控制器,从而省略大量的重复代码。
4.字典转模型
对于 络请求返回JSON或者是XML的数据,为了方便管理,我们可以定义一些模型去接受,同时应该在模型中提供两个初始化的方法:
以适应不同的使用习惯。
5.建立pch文件
在整个项目中应该建立一个pch文件,里面应该导入一些常用的头文件和定义一些宏。
6.因使控制器页面的代码精炼
在疯狂食材中,使用最多的就是在中返回cell,如果cell中有太多的数据要处理,就会增加控制器的代码量,这是我们可以在自定义cell中添加一个模型属性,并且在重写该属性的setter方法,在setter方法中为cell赋值,从而减少控制器中的代码量,疯狂食材中的某个页面代码如下:
当然,这只是我的一些心得罢了。
在疯狂食材的错误过程中,本人也遇到过许许多多的问题,但最后发现大部分都是一些小问题,所以,在开发过程中不要害怕出错,只有在错误中我们在能学到更多,在改正错误中才能进步的更快。
最后,再来一句总结:开发软件的过程中,细节处理真的很重要,它将决定用户对软件的体验效果。所以,在开发过程中,一定要处理好软件的细节处。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!