印象社交应用软件的设计与开发

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

印象社交应用软件的设计与开发

本项目的研究目标和最终成果即为印象社交应用平台,包括印象Android客户端,服务器以及数据库。印象社交应用是一款基于图片分享的社交平台,包括注册、登录、发表以及浏览好友动态等功能,支持多用户同时登陆并向服务器上传下载数据。

本项目使用SqlServer2008作为数据库,使用Apache Tomcat作为服务器。服务器端主要使用JavaEE开发服务器端应用程序,客户端使用装有ADT插件的Eclipse开发。

本论文主要从开发背景,软件实现的功能以及开发过程几个方面介绍本项目。

1.1 项目来源

随着信息化社会的不断深入以及信息技术的迅猛发展,我们的生活发生了天翻地覆的变化。从一百多年前的电报、电话,到如今的互联网、计算机,尤其是近十年来智能移动设备的发展,也给信息社会带来了新的血液,属于移动平台的时代随之到来。

移动改变生活,信息技术的深入发展为人们通信的便利提供了可能和便利。随着Symbian、iOS以及Android等智能手机平台的发展和崛起,无数移动端社交通信软件纷纷崛起并越来越发展为人们主流的社交生活方式,这些应用给人们带来的实惠与便利也越来越使之得到更多人的青睐。

出于一个程序员的视角和兴趣爱好,以及对当前潮流和基于的把握,我也选择了加入到智能手机平台的应用开发之中,并希望通过不断地改进和功能扩展给用户带来更多更实用的体验和帮助。印象应用便是基于以上原因诞生的,它还小,但是还在成长。

1.2 开发准备

1.2.1 开发环境的准备

鉴于本应用平台的开发需要后台的数据库和服务器以及需要Android客户端,所以需要有开发以上功能的开发环境。在这里我选择使用性能比较稳定且更熟悉的SQLServer2008来进行数据库的开发,选择JavaEE版的Eclipse来进行服务器的开发,选择比较熟悉的装有ADT插件的Eclipse来进行客户端的开发。安装并配置好以上开发工具就可以进行开发工作了。

1.2.2 知识技能的准备

并不是有了开发工具就能胜任该应用平台的开发工作,必须有相应的知识技能才能更加行云流水实施和完成开发工作。

首先,对于数据库的开发,你需要有数据库的相关基础知识,包括SQL语言,数据库的相关概念和数据库的运行原理等,除此之外还要熟悉SQLServer2008的相关操作。

其次,要完成对服务器的开发,你需要有对Java语言的比较好的掌握,对服务器端开发的经验以及Java连接SQLServer数据库的知识。

最后,客户端的开发是整个开发流程中最后却是最关键最困难的一环,不仅仅是代码量大,更重要的需要的知识技能更多而且应用逻辑更加复杂。进行客户端的开发需要Java语言基础,Android编程基础,网络编程相关知识以及比较好的逻辑思维能力,由于工程结构复杂、规模相对较大,要求开发者要有比较清晰的思路和冷静的应变能力。

第二章印象应用设计

2.1 数据库设计

本应用需要的数据库比较简单,原则上仅需两个表(User_table和Article_table)和一个视图(Article_all)即可。User_table表(如图1)包含用户ID以及姓名等基本信息,Article_table表(如图2)包含状态ID以及图片、图片描述、用户ID等信息,其中,Article_table表中的用户ID与User_table表中的用户ID是一一对应的。视图Article_all(如图3)是Article_table与User_table内联查询生成,扩展了Article_table中更多的用户信息(包括用户名等)以便在客户端需要时返回。

数据库端主要是与服务器端进行连接实现数据的存储,更新,查询等功能。

图1 User_table表结构

图2 Article_table表结构

图3 Article_all视图结构

2.2 服务器端设计

服务器端实现的功能是与客户端的需求一一对应的,主要就是接收客户端的请求并进行相应的数据库查询,更新等操作,并将客户端需要的数据返回给客户端。

下图(图4)是服务器端基本架构。com.data包中为与客户端对应的数据模型,用于解析客户端发来的数据或者封装数据库中查询得到的数据并发送至客户端。com.liujie.servlets包中为servlet类,用于实现不同的数据处理功能。其中,Helloservlet为测试类,不再细述;Login为处理登录过程的servlet类,接收客户端发送的登录信息,并与数据库中进行校验,校验成功后返回成功登录信息,否则返回登录失败信息;Register处理注册功能,接收客户端发送的注册信息,与数据库端进行校验,若数据库端无此用户即添加到数据库并返回注册成功信息,否则返回注册失败信息;Getallarticles接收客户端发送的请求数据(包括用户ID等信息),然后向数据库查询相应数据,向客户端返回好友消息列表和个人消息列表;Uploadarticle接收客户端发送的数据(包括照片、文字说明以及用户ID等信息)并提取,然后向数据库请求更新Article_table中的数据,返回更新成功或者失败的信息;RefreshUser接收客户端发来的刷新用户信息的请求(包括用户ID等信息),然后从数据库中获取相应信息,封装成User类后返回客户端;UpdateInfo负责接收客户端发送的更新用户信息的请求以及数据,然后向数据库请求更新User_table中的数据,然后返回给客户端更新成功或者失败的信息;ViewOthers负责接收客户端发来的浏览好友个人主页的请求(包括用户ID 等信息),然后查询数据库获取该用户ID的消息列表,封装后返回客户端。

图4 服务器端程序结构

2.3 客户端设计

客户端主要负责请求并接收数据并展示,因此界面设计和功能设计都很重要,下面是本应用的界面设计和功能设计。

2.3.1 界面设计

本应用分为7个界面,分别为:启动界面,登陆界面,注册界面,主界面(包括3个tab页,分别是消息列表界面,图片上传界面,个人主页界面),个人信息界面,访问其他用户的个人主页界面,和关于界面。相关具体描述见功能设计。

2.3.2 功能设计

相关文档
最新文档