腾讯微博客户端的设计与实现毕业设计说明书含源程序.docx
《腾讯微博客户端的设计与实现毕业设计说明书含源程序.docx》由会员分享,可在线阅读,更多相关《腾讯微博客户端的设计与实现毕业设计说明书含源程序.docx(31页珍藏版)》请在冰豆网上搜索。
腾讯微博客户端的设计与实现毕业设计说明书含源程序
毕业设计(论文)
题目:
腾讯微博客户端的设计与实现
专业:
计算机科学与技术(软件工程)
院(系):
信息工程学院
完成时间:
2012年05月15日
毕业设计(论文)任务书
附表一题目来源:
探索学习
课题名称
腾讯微博客户端的设计与实现
设计人姓名
指导教师姓名、职称
专业
计算机科学与技术(软件工程)
指导时间/地点
班级
一、设计(论文)内容
这次设计的主要内容是开发一个腾讯微博的pc客户端,通过使用腾讯微博开放平台提供的API函数以及开发文档,在VS2010平台下使用MFC具有图形界面的客户端,其主要功能有,通过用户的授权认证,获得用户的相关信息,用户发表新的微博,获得用户的相关微博,并对此微博进行评论,和收藏等。
二、设计(论文)的主要技术指标
1、能够正确的通过腾讯微博的认证,正确地获取用户的信息。
2、能够正确显示微博信息,不出现错字和乱码。
3、不仅要获取微博,还能获取微博配备的相关图片。
三、进度安排
1、熟悉编程语言VS2010的编程平台;
2、熟悉腾讯微博API的相关用法;
3、编写软件详细设计报告;
4、实施开发过程;
5、调试软件。
四、毕业设计(论文)提交的文档及基本要求
1.毕业论文一份(包含封皮、目录、中英文摘要、内容及参考文献)
2.不少于5000汉字的科技翻译资料一份
3、毕业论文简介(A4纸1~2页)(包含题目、专业、年级、姓名、指导教师、毕业论文所做的工作、解决的问题、创新之处等)
4.毕业设计任务书
5.开题报告
6.毕业设计工作中期检查表
毕业设计(论文)开题报告
附表二
课题名称
腾讯微博客户端的设计与实现
学生姓名
学号
专业班级
一、选题的目的意义
微博,即微博客(MicroBlog)的简称,是一个基于用户关系的信息分享、传播以及获取平台,用户可以通过WEB、WAP以及各种客户端组件个人社区,以140字左右的文字更新信息,并实现即时分享。
微博客草根性更强,且广泛分布在桌面、浏览器、移动终端等多个平台上,有多种商业模式并存,或形成多个垂直细分领域的可能,但无论哪种商业模式,都离不开用户体验的特性和基本功能。
在微博客上,140字的限制将平民和莎士比亚拉到了同一水平线上,这一点导致大量原创内容爆发性地被生产出来。
二、国内外发展综述
Twitter是2006年3月由blogger的创始人威廉姆斯(EvanWilliams)推出的,英文原意为小鸟的叽叽喳喳声,用户能用如发手机短信的数百种工具更新信息。
Twitter的出现把世人的眼光引入了一个叫微博的小小世界里。
2007年中国第一家带有微博色彩的饭否网开张,直到2010年国内微博迎来来春天,微博像雨后春笋般崛起,2011年上半年,我国微博用户数量从6331万增至1.95亿,半年增幅高达208.9%。
微博在网民中的普及率从13.8%增至40.2%。
从2010年底至今,手机微博在网民中的使用率比例从15.5%上升到34%。
由此可见,微博已经与我们的生活紧密的联系起来,越来越多的普通民众能够通过微博发出自己的声音使得被社会关注。
在一些大的突发事件或引起全球关注的大事,如果有微博客在场,利用各种手段在微博客上发表出来,其实时性、现场感以及快捷性,甚至超过所有媒体。
在我国,网民使用的微博平台主要以新浪微博和腾讯微博为主。
腾讯微博
新浪微博
推特网
三、毕业设计(论文)所用的方法
系统设计基于C/S架构
利用Microsoft的VS2010开发工具,开发出带有图形界面的客户端软件,其中利用腾讯微博提供的API,将微博中的内容抓取到本地客户端,然后将内容显示出来。
四、主要参考文献与资料获得情况
腾讯微博开放平台:
精通mfc程序设计(人民邮电出版社)
VC++深入详解(电子工业出版社)
五、指导教师审批意见
签字:
年月日
毕业设计工作中期检查Ⅰ
附表三2012年4月2日
课题名称
腾讯微博客户端的设计与实现
姓名
专业和班级
指导教师
一、毕业设计具体内容、目标和可能遇到的问题
具体内容及目标:
(1)通过腾讯微博开放平台提供的API完成对用户登录的认证。
(2)熟悉腾讯微博提供的API,了解微博的基本开发过程。
(3)利用微博API完成对用户相关信息的抓取。
可能遇到的问题:
(1)对腾讯微博API相关概念的理解以及相关开发的技术的掌握。
(2)对VC++相关控件的使用
二、采取的研究方法、技术路线、实验方案及可行性分析
研究方法及技术路线:
(1)查阅腾讯微博开放平台提供的帮助文档。
(2)通过OAUTH认证的相关文章,理解此认证的原理方法。
可行性分析:
虽然微博在国内十分流行,但都是基于网页版的,客户端软件基本没有,而客户端与网页相比,有速度快和界面友好的优势,所以开发一个优秀的客户端具有十分重要的意义。
三、指导教师对学生出勤、文献阅读等方面的评语
签字:
年月日
毕业设计工作中期检查Ⅱ
附表四2012年5月3日
课题名称
腾讯微博客户端的设计与实现
姓名
专业和班级
计算机科学与技术(软件工程)08级4班
指导教师
一、阶段性结果
实现了客户端获取用户的授权,登陆到用户的账号,获取用户的相关信息。
完成了对用户微博信息的抓取,用户可以利用客户端发表新的微博,对微博进行评论、收藏。
二、存在的问题
受限于VC++提供的控件,无法提供较好的用户体验。
微博信息显示方式的改变导致变量的冗余,浪费内存。
三、后一步工作设想
进一步加强客户端的各个功能,完善各个功能模块。
对代码进行优化,减少无用的变量,完善用户界面,使客户端操作更加简单便捷。
四、指导教师对学生出勤、论文进展方面的评语
签字:
年月日
腾讯微博客户端的设计与实现
摘要:
微博,即微博客(MicroBlog)的简称,是一个基于用户关系的信息分享、传播以及获取平台,用户可以通过WEB、WAP以及各种客户端组建个人社区,以140字左右的文字更新信息,并实现即时分享。
微博集成了手机短信、博客与社交网站的优点,将消费者从原来单纯的信息接收者变成了接收和发布信息的完全参与者,从而让社会走进了全民记者时代。
此客户端是在VS2010平台下利用微软的MFC(微软基础类库)进行开发的,通过调用腾讯微博开放平台提供的API接口,获得腾讯微博用户的相关信息。
通过此客户端,用户可以获得自己的信息,发表新微博,查看自己收听用户的微博,并进行评论与收藏。
在界面方面,使用的是MFC提供的控件。
通过对控件的功能的完善,可以使用户更加方便的使用客户单完成微博的一些基本操作。
关键词:
微博,腾讯,MFC,API接口
DesignandImplementationofTencentMicroblogClient
Abstact:
Microblog(MicroBlog),referredtoasmicroblogging,isarelationshipbasedonuserinformationsharing,disseminationandaccesstotheplatform,userscansetupindividualcommunities,throughtheWEBaswellasavarietyofclientstoupdatetheinformationinabout140wordsoftext,andtoachieveinstantsharing.Themicrobloggingintegratestheadvantagesofmobilephonetextmessages,blogandsocialnetworkingsites,consumersfromtheoriginalsimpleinformationreceivertobecomeafullparticipanttoreceiveandpublishinformation,sothatthesocietyenteredtheeraofuniversalreporter.
ThisclientisdevelopedbyusingMicrosoft'sMFC(MicrosoftFoundationClassLibrary)inVS2010platform.BycallingTencentmicrobloggingopeningplatformAPIinterfacegetTencentmicroblogginguser'sinformation.Throughthisclient,userscanaccesstheirowninformation,thenewmicroblogging,checkthemicrobloggingofuser'sthattheyarelisteningandreviewsandcollection.Attheinterface,usingMFCcontrols.Perfectcontrolfunctionallowsuserstomoreeasilyusethecustomerasingletocompletesomeofthebasicoperationofmicroblogging.Keywords:
MicroBlog,Tencent,MFC,APIinterface.
一、绪论
1.1引言
微博,即微博客(MicroBlog)的简称,是一个基于用户关系的信息分享、传播以及获取平台,用户可以通过WEB、WAP以及各种客户端组建个人社区,以140字左右的文字更新信息,并实现即时分享。
近3年来,互联网上4种主要的社交媒体(SocialMedia)———微博、社交网站、视频分享网站和开放式百科全书从根本上改变了人类的生活。
人类正以前所未有的速度和广度传递信息,以计算机为媒介的沟通成为人们互动沟通的重要方式。
在这4种媒体中,微博后来居上。
国外最早提供微博服务的网站是美国的Twitter,从2006年10月开通至2011年1月在全球已拥有近2亿注册用户,年增长率约1500%,每日访问量约30亿国内的新浪微博和腾讯微博均在开通不到一年半的时间内突破1亿用户。
微博集成了手机短信、博客与社交网站的优点,将消费者从原来单纯的信息接收者变成了接收和发布信息的完全参与者,从而让社会走进了全民记者时代。
2010年我国最大的50起网络舆情案例中约1/4是微博发起的,微博已成为企业和网民互动沟通的新平台。
1.2微博的定义与特点
1.2.1微博的定义
国内知名新媒体领域研究学者陈永东在国内率先给出了微博的定义:
微博是一种通过关注机制分享简短实时信息的广播式的社交网络平台。
其中有五方面的理解:
(1)关注机制:
可单向可双向
(2)简短容:
通常为140字
(3)实时信息:
最新实时信息
(4)广播式:
公开的信息,谁都可以浏览
(5)社交网络平台:
把微博归为社交网络
1.2.2微博的特点
微博客草根性更强,且广泛分布在桌面、浏览器、移动终端等多个平台上,有多种商业模式并存,或形成多个垂直细分领域的可能,但无论哪种商业模式,都离不开用户体验的特性和基本功能。
(1)信息获取具有很强的自主性、选择性,用户可以根据自己的兴趣偏好,依据对方发布内容的类别与质量,来选择是否“关注”某用户,并可以对所有“关注”的用户群进行分类;
(2)微博宣传的影响力具有很大弹性,与内容质量高度相关。
其影响力基于用户现有的被“关注”的数量。
用户发布信息的吸引力、新闻性越强,对该用户感兴趣、关注该用户的人数也越多,影响力越大。
此外,微博平台本身的认证及推荐亦助于增加被“关注”的数量;
(3)内容短小精悍。
微博的内容限定为140字左右,内容简短,不需长篇大论,门槛较低;
(4)信息共享便捷迅速。
可以通过各种连接网络的平台,在任何时间、任何地点即时发布信息,其信息发布速度超过传统纸媒及网络媒体。
1.3国内外研究发展综述
1.3.1国外发展综述
2006年3月,博客技术先驱blogger创始人埃文·威廉姆斯(EvanWilliams)创建的新兴公司Obvious推出了大微博服务。
在最初阶段,这项服务只是用于向好友的手机发送文本信息。
Twitter是2006年3月由blogger的创始人威廉姆斯(EvanWilliams)推出的,英文原意为小鸟的叽叽喳喳声,用户能用如发手机短信的数百种工具更新信息。
Twitter的出现把世人的眼光引入了一个叫微博的小小世界里。
Twitter是一个社交网络及微博客服务。
用户可以经由SMS、即时通信、电邮、Twitter网站或Twitter客户端软件(如Twitterrific)输入最多140字的文字更新,Twitter被Alexa网页流量统计评定为最受欢迎的50个网络应用之一。
在2007年5月,国际间计算总共有111个类似Twitter的网站。
然而,最值得注意的仍是Twitter,它于2007年在得克萨斯州奥斯汀举办的南非西南会议赢得了部落格类的网站奖。
Twitter的主要竞争对手是Plurk和Jaiku。
后来微博客的新服务特色持续诞生,例如Plurk有时间轴可以观看整合了视讯和照片的分享,Identi、Pownce整合了微薄客加上档案分享和事件邀请,由Digg的创始人KevinRose和另外三位开发者共同发展。
1.3.2国内发展综述
从2007年中国第一家带有微博色彩的饭否网开张,到2009年,微博这个全新的名词,以摧枯拉朽的姿态扫荡世界,打败奥巴马、甲流等等名词,成为全世界最流行的词汇。
伴随而来的,是一场微博世界人气的争夺战,大批量的名人
图1-1新浪微博
被各大网站招揽,各路名人也以微博为平台,在网络世界里聚集人气,同样,新的传播工具也造就了无数的草根英雄,从默默无闻到新的话语传播者,往往只在一夜之间、寥寥数语。
2009年7月中旬开始,国内大批老牌微博产品(饭否、腾讯滔滔等)停止运营,一些新产品开始进入人们的视野,像开放的叽歪,6月份开放的Follow5,7月份开放的9911,8月份开放的新浪微博,其中Follow5在2009年7月19日孙楠大连演唱会上的亮相,是国内第一次将微博引入大型演艺活动,与twitter当年的发展颇有几分神似。
2010年国内微博迎来来春天,微博像雨后春笋般崛起。
四大门户网站均开设微博。
根据相关公开数据,截至2010年1月份,该产品在全球已经拥有7500万注册用户。
中国互联网络信息中心(CNNIC)今日发布《第28次中国互联网络发展状况统计报告》,报告显示,2011年上半年,中国微博用户从6331万增至1.95亿,增长约2倍。
该《报告》指出,中国互联网的普及率增至36.2%,较2010年增加1.9%。
2011年上半年,我国微博用户数量从6331万增至1.95亿,半年增幅高达208.9%。
微博在网民中的普及率从13.8%增至40.2%。
从2010年底至今,手机微博在网民中的使用率比例从15.5%上升到34%。
图1-2腾讯微博
至今,新浪微博用户数超过1亿,得益于抢占了先机,而且在整体的战略执行上也比较彻底到位,所以获得了现在的地位。
仅仅两年时间,新浪微博就为新浪生下了一个价值几十亿美金的‘金蛋’。
而另一个微博巨头:
腾讯微博,也呈现出发展迅猛的姿态,腾讯拥有近5亿的QQ注册用户,2亿左右的活跃用户。
这部分人群很容易受潮流趋势的影响,开通腾讯微博。
通过腾讯微博能够与QQ好友和腾讯微博上的其他用户行行信息的分享。
另外其作为重要的推广渠道。
企业用户通过注册腾讯官方微博,得到认证后,能够迅速的扩大企业的知名度。
个人用户通过腾讯微博,也能再微博平台进行个人的推广。
目前,很多的社会事件揭露都来自于微博平台。
高校教育平台也随之建立,如腾讯微博校园上的高校新闻哥微博体系的发展,推动了中国教育事业信息化发展的步伐。
二、系统开发环境简介
2.1系统开发软件环境
2.1.1Visualstudio.NET2010简介
VisualStudio是微软公司出品的一款大型应用软件,从最初的VisualStudio97开始就成为编程的重要工具。
VisualStudio.NET是一套完整的开发工具,用于生成ASPWeb应用程序、XMLWebservices、桌面应用程序和移动应用程序。
VisualBasic.NET、VisualC++.NET、VisualC#.NET和VisualJ#.NET全都使用相同的集成开发环境(IDE),该环境允许它们共享工具并有助于创建混合语言解决方案。
另外,这些语言利用了.NETFramework的功能,此框架提供对简化ASPWeb应用程序和XMLWebservices开发的关键技术的访问。
VisualStudio2010版本于2010年4月12日上市,其集成开发环境(IDE)的界面被重新设计和组织,变得更加简单明了。
VisualStudio201O同时带来了NETFramework4.0,MicrosoftVisualStudio2010CTP(CommunityTechnologyPreview--CTP)并且支持开发面向Windows7的应用程序。
除了MicrosoftSQLServer,它还支持IBMDB2和Oracle数据库。
VisualStudio2010的新增功能集中在以下几个方面:
(1)支持WindowsAzure,微软云计算架构迈入重要里程碑。
(2)助力移动与嵌入式装置开发,三屏一云商机无限。
(3)实践当前最热门的Agile/Scrum开发方法,强化团队竞争力。
(4)升级的软件测试功能及工具,为软件质量严格把关。
(5)搭配Windows7,Silverlight4与Office,发挥多核并行运算威力,
创建美感与效能并重的新一代软件。
(6)支持最新C++标准,增强IDE,切实提高程序员开发效率。
2.1.2腾讯微博开放平台
腾讯微博开放平台,是基于腾讯微博系统,为广大开发者和用户提供的开放数据分享与传播平台。
广大开发者和用户登录平台后,就可以使用平台提供的开放API接口,创建应用从微博系统获取信息,或将新的信息传播到整个微博系统中,丰富多样的API接口和应用,加上你的智慧,将创造出无穷的应用和乐趣!
(1)平台介绍—在微博开放平台能获取到的资源及优势
(2)应用开发说明—说明如何成为一个开发者并创建应用
(3)应用审核流程—审核应用的来源字段能获得的好处,以及如何审核
(4)开发者协议—在此查看腾讯微博开放平台开发者服务协议
2.2系统开发硬件环境
硬件配置如下:
操作系统:
Windows7操作系统
CPU:
Intel(R)Core(TM)DuoCPUT66002.20GHz
内存:
5GB
显卡:
NVIDIAGeforceGT130M
三、软件需求分析与总体设计
3.1系统需求分析
3.1.1功能需求
微博作为现在人们生活中必不可少的工具,通过微博这个媒介,发布身边的新鲜事,并且能对某一热门话题进行评论,必要的时候还可收藏自己喜欢的文字。
可以说文博极大地丰富了我们的生活。
所以说,一个微博客户端系统,一定要包含如下的基本功能,来发挥微博的作用:
(1)用户登录自己的账户并查看自己的个人信息。
通过OAUTH认证方式,用户可以在不告知客户端自己的账号和密码的情况下,安全的通过客户端登陆腾讯微博,并且获取自己的相关信息。
(2)用户查看自己的新微博,获取好友的最新动态。
用户可以查看自己关注对象的微博,并能够通过随时刷新获得最新的微博动态。
并且,用户不仅能看到微博的文字内容,还能看到微博的相关配图。
(3)用户发表新微博,告诉好友自己身边的新鲜事。
用户可以发表新的微博,随时更新自己的状态。
(4)用户对好友的微博进行评论,并且对自己喜爱的微博进行收藏。
用户可以对看到的微博进行评论,发表自己的意见,当用户看到感兴趣的微博时,还收藏此微博。
3.1.2稳定性需求
(1)客户端能够长时间的正确运行,如果客户端出错,客户端会有相应的出错信息,能够使用户明白在哪里出错了,该怎么办。
(2)减少无用的代码,减少因此带来的错误,并使客户端能够尽可能快的对数据进行处理
3.1.3其它需求
(1)为保证客户端的正常运行,应保证计算机能够一直连接互联网以获取信息。
(2)使用图形化界面,可使用鼠标或键盘作为标准输入设备。
3.2微博客户端设计概要
微博客户端运行主要分为两个阶段,第一阶段:
认证阶段,第二阶段:
信息获取阶段。
用户首先通过客户端打开的腾讯微博授权界面获得授权码,然后将获得授权码交付给客户端从而完成认证阶段。
客户端通过获得认证码作为用户授权的依据,从而通过腾讯微博提供的API获得用户相关的微博信息。
认证输入账户相关信息
阶段
返回授权码
信息通过授权信息
获取
阶段返回用户微博的相关信息
图3-1客户端运行流程
3.3微博客户端认证机制
3.3.1腾讯微博APIOAuth认证介绍
腾讯微博开放平台,是基于腾讯微博系统,为广大开发者和用户提供的开放数据分享与传播平台。
广大开发者和用户登录平台后,就可以使用平台提供的开放API接口,创建应用从微博系统获取信息,或将新的信息传播到整个微博系统中,丰富多样的API接口和应用,加上您的智慧,将创造出无穷的应用和乐趣。
腾讯微博API采用OAuth协议为第三方提供接入服务,遵循[RFC-5849]规范。
有关OAuth认证的详细说明,请阅读官方OAuth规范。
各种语言的OAuth客户端可以在Google-OAuth项目里找到。
腾讯微博API使用OAuth1.0a版本。
3.3.2OAuth认证机制介绍
OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。
与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAUTH是安全的。
同时,任何第三方都可以使用OAUTH认证服务,任何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。
业界提供了OAUTH的多种实现如PHP、JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。
目前互联网很多服务如OpenAP