服务器:
服务器主要使用J2EE + MySQL。使用Struts,Hibernate,Spring,Gson等框架。
- Struts实现MVC,派发各种请求到相应的逻辑处理模块
- Hibernate作为JPA的实现,
- Spring主要使用了ioc容器。
- Gson能将JavaBean序列化正确的成字符串。
Android客户端:
- Android客户端的界面模仿了“新浪微博”(ActivityGroup,底部导航按钮到各个Activity)。我重构了ActivityGroup,抛弃了TabActivity(“新浪微博”使用的是TabActivity),使得重用性和性能得以提高。详细的实现
- 使用HttpClient请求数据,使用线程池和Android内置的Handler实现异步处理。详细的实现
- 客户端做了数据缓存处理(Sqlite),对于已经请求不会做重复请求。
不足之处:
由于时间紧迫,没有做以下的优化
- 安全性问题,没有权限验证,整个Web Service都是开放的。可以考虑用OAuth。
- 性能问题,服务器没有做负载均很和分布式的处理,用户数量大可能会导致崩溃。