分类: Android
【大声说出你的爱】CSDN社区情人节特别活动 专访李云:从通讯行业的架构师到互联网“新兵” 电子版《程序员》杂志免费
领
Android之基于XMPP协议即时通讯软件(二)
2013-12-18 23:37 1377人阅读 评论(22) 收藏 举报
2013博客之星投票请移
步:http://vote.blog.csdn.net/blogstaritem/blogstar2013/weidi1989
昨天给大家粗略的介绍了一下我那个简单的项目:Android之基于XMPP协议即时通讯软件(一)
从今天开始,就详细展开的介绍设计思路,一是给自己做个总结,二是希望能给各位朋友一点点帮助吧!
也许和很多刚刚开始入行程序猿的朋友一样,我最初也是每开始一个新项目,只是稍微思考一下便开始写代码。
一个星期后,尽管实现了部分功能,却发现自己有点乱了,因为又突然生出很多新的想法,于是又顺着思路写下
去,再持续一段时间,就会发现这个项目做不下去了。代码重复很多,而且bug也是层出不穷。因此不得不推翻
重新开始,浪费了很多时间。所以说,开始前的准备工作是相当重要的。
一般说来完成一个项目可以分成三步:
首先:画几天时间好好理清思路,可以在草稿纸上写写画画,列出必须实现的功能已经界面特效等等,
做到胸有成竹。
其次:开始搭建框架,定义好所有功能的接口,并且注释好做什么用,这是方便团队合作的项目,个人
项目也可以养成写注释的好习惯。
最后:分开实现各部分功能,并且分开调试,可以单独独立成一个应用或者单元测试模块。比如说本应
用的所有界面效果都是独立成一个应用测试无误后才最后合入的。
我这个项目呢,一开始是完成了所有的界面模块工作,因为是直接从之前的项目移植过来的,稍微修改了一下,
所以这部分省掉了很多时间。
重心就直接放在了功能实现这方面了。功能模块部分就是下面两个包:com.way.service和 com.way.smack
首先是定义通用接口,主要就是将第三方包asmack.jar中需要用到的东西拿出来,这个包是非常庞大的,但是我
们这个小应用并不是需要实现所有的功能,所以,抽取自己需要的那部分就可以了,定义成接口,方便以后扩展
需要的功能,代码如下: