ios的即时问答社区app的设计(源码)
摘 要随着互联网的发展,人们学习的知识来源也不仅仅局限于口口相传和书籍,互联网已经成为一种高效方便的学习手段,本课题研究的APP是通过标签来整合社区问答的信息,从而方便更多的人来寻找自己想要的答案。基于iOS的即时问答社区APP的想法是通过一个社区平台,将用户的问题、答案通过标签的方式来存储,用户可以通过这些标签来很方便的寻找自己的答案。本文介绍了课题产品的设计初衷、需求详情、主要功能模块,以及开发过程等。并通过Objective-C语言基于LeanCloud云数据库、即时通讯 功能模块完成app的开发制作通过一段时间的开发,课题产品基本完成了预期设计,从中我学到了很多数据维护方面的知识、主流app页面框架及功能模块的设计等知识,有了更进一步的技术积累,功能已经实现,但是还有很多应该进一步优化的地方,比如更加合理的用户体验等。
目 录
第一章 课题概述 1
1.1课题背景 1
1.2课题目的 1
1.3本文的内容框架 2
第二章 相关技术介绍 3
2.1 Xcode开发工具介绍 3
2.2开发语言ObjectiveC 3
2.3 LeanCloud技术 3
2.4 LeanStorage 云数据库服务 4
2.5 LeanMessage 即时通讯服务 4
第三章 系统模块设计 6
3.1课题功能及业务流程 6
3.1.1注册登录功能 6
3.1.2浏览已归档问答 7
3.1.3 聊天室中问答的交互 8
3.2 LeanCloud云数据库的表结构 8
第四章 项目开发详情 9
4.1封装的常用方法工具类 (Utils 类) 9
4.2 登录模块的实现 9
4.3 问答浏览模块的实现 12
4.4 即时问答模块的实现 13
结束语 14
致 谢 15
参考文献 16
第一章 课题概述
1.1课题背景
目前的手机已经不仅仅是一款移动通讯工具,更像是一台小型的个人便携式计算机。据
*好棒文|www.hbsrm.com +Q: @351916072@
统计,至2015 年底,全球的手机用户数量已经达到了71亿,其中中国的手机用户数量已突破13亿。手机已经成为了现在人们生活中的不可或缺的一部分,而其中大部分的用户用的都是智能手机。智能手机的发展势不可挡。现在的智能手机系统基本是两大阵营:苹果自家的iOS 系统、Google旗下的 Android 系统。
随着移动互联网应用的发展和4G 网络的成熟,智能手机成为最重要的终端载体,因此移动互联网相关行业的技术发展也突飞猛进,而相对的技术学习,尤其是相关技术的书籍资料却远远赶不上开发等技术的发展的速度,甚至学习相关技术很难通过书籍来达成,因为书籍并不能面面俱到,更新速度也很难跟上技术的发展,因此越来越多的年轻人会通过网络问答,社交平台等来达到一定的学习目的。
可喜的是目前有很多相关技术的QQ交流群,论坛,贴吧等,学习者可以通过这些平台来扩充自己的知识,向达者学习。可是这也催生了一种很悲剧的现象,很多初学者会碰到一堆相同的问题,然后不厌其烦的在各大平台寻找答案,已经解答过的人也不愿意为同一个问题解答很多次,并且随着技术的日新月异,可能在网上搜到的问题的解决方案早已过时,信息难以分门别类的存储和即时的更新换代,这是我们最大的损失。
1.2课题目的
随着互联网的发展,人们学习的知识来源也不仅仅局限于口口相传和书籍,互联网已经成为一种高效方便的学习手段,本课题研究的APP是通过标签来整合社区问答的信息,从而方便更多的人来寻找自己想要的答案。基于iOS的即时问答社区APP的想法是通过一个社区平台,将用户的问题、答案通过标签的方式来存储,用户可以通过这些标签来很方便的寻找自己的答案,并且在后续的用户问答中可以通过标签来即时更新已存储的问答信息,这样就可以做到信息的分类和永不过时,这也正是信息的价值所在。也极大程度上方便了用户通过该平台学习的效率。
1.3本文的内容框架
本课题以即时通讯社区为主要开发方向,基于iOS平台、ObjectiveC语言来完成开发工作,后台使用LeanCloud云数据库来管理用户数据和问答归档等数据,使用LeanCloudIM的基于xmpp协议的即时通讯SDK实现用户间的即时通讯。
第一章介绍了课题产品的概况,包括课题的设计背景、设计目的、功能模块等。
第二章介绍了课题研究的开发技术和工具,包括Xcode开发工具、ObjectiveC编程语言及LeanCloud、LeanCloudIM的技术。
第三章介绍了课题产品app的设计,包括功能模块的搭建,业务流程图,云数据的设计等。
第四章介绍了课题产品app的开发详情,包括自己平时在开发过程中封装的工具类,功能模块、业务模块和交互模块的实现。
第二章 相关技术介绍
本章介绍了开发APP所用到的开发环境、开发语言及其他接入技术。通过全面的描述,阐述本项目中用到的工具、语言及其他技术。
2.1 Xcode开发工具介绍
Xcode 是运行在操作系统Mac OS X上的集成开发工具(IDE),由苹果公司开发。Xcode是开发OS X 和 iOS 应用程序的最快捷的方式。Xcode 具有统一的用户界面设计,编码、测试、调试都在一个简单的窗口内完成。
Xcode支持ObjectiveC和Swift两种编程语言。本次设计采用ObjectiveC作为编程语言。
2.2开发语言ObjectiveC
ObjectiveC,通常写作ObjC或OC和较少用的Objective C或ObjC,是扩充C的面向对象编程语言。
ObjectiveC是编写以下应用的利器:
?iOS操作系统
?iOS应用程序
?Mac?OS X操作系统
?Mac OSX 上的应用程序
ObjectiveC的流行归功于iPhone的成功。编写iPhone应用程序的主要编程语言是ObjectiveC。
2.3 LeanCloud技术
目前,大部分公司开发一款具备联网功能的移动课题产品,需要有专门的后端人员,搭建专门为前段服务的数据库。这对于个人开发者来说,提高了做互联网产品的门槛。
LeanCloud云数据库的服务出现,可以提供第三方标准化的数据库服务,让一个前段开发人员独立能够开发一款带后端的联网应用。而代价只是需要了解数据库的基础。
此外,LeanCloud还提供诸如及时通讯服务、推送服务等功能,提供高效稳定的功能,而这一些功能靠个人的时间,将是大量的资源投入(服务器资源,专业的开发,时间投入,人员投入)。
2.4 LeanStorage 云数据库服务
抛开后端系统开发负担,专注用户体验和前端实现,加速课题开发进度,更快赢得市场。
BaaS:backend as service 后端即服务,不再理会「应用服务器」、「数据服务器」,不再担心流量和压力
目 录
第一章 课题概述 1
1.1课题背景 1
1.2课题目的 1
1.3本文的内容框架 2
第二章 相关技术介绍 3
2.1 Xcode开发工具介绍 3
2.2开发语言ObjectiveC 3
2.3 LeanCloud技术 3
2.4 LeanStorage 云数据库服务 4
2.5 LeanMessage 即时通讯服务 4
第三章 系统模块设计 6
3.1课题功能及业务流程 6
3.1.1注册登录功能 6
3.1.2浏览已归档问答 7
3.1.3 聊天室中问答的交互 8
3.2 LeanCloud云数据库的表结构 8
第四章 项目开发详情 9
4.1封装的常用方法工具类 (Utils 类) 9
4.2 登录模块的实现 9
4.3 问答浏览模块的实现 12
4.4 即时问答模块的实现 13
结束语 14
致 谢 15
参考文献 16
第一章 课题概述
1.1课题背景
目前的手机已经不仅仅是一款移动通讯工具,更像是一台小型的个人便携式计算机。据
*好棒文|www.hbsrm.com +Q: @351916072@
统计,至2015 年底,全球的手机用户数量已经达到了71亿,其中中国的手机用户数量已突破13亿。手机已经成为了现在人们生活中的不可或缺的一部分,而其中大部分的用户用的都是智能手机。智能手机的发展势不可挡。现在的智能手机系统基本是两大阵营:苹果自家的iOS 系统、Google旗下的 Android 系统。
随着移动互联网应用的发展和4G 网络的成熟,智能手机成为最重要的终端载体,因此移动互联网相关行业的技术发展也突飞猛进,而相对的技术学习,尤其是相关技术的书籍资料却远远赶不上开发等技术的发展的速度,甚至学习相关技术很难通过书籍来达成,因为书籍并不能面面俱到,更新速度也很难跟上技术的发展,因此越来越多的年轻人会通过网络问答,社交平台等来达到一定的学习目的。
可喜的是目前有很多相关技术的QQ交流群,论坛,贴吧等,学习者可以通过这些平台来扩充自己的知识,向达者学习。可是这也催生了一种很悲剧的现象,很多初学者会碰到一堆相同的问题,然后不厌其烦的在各大平台寻找答案,已经解答过的人也不愿意为同一个问题解答很多次,并且随着技术的日新月异,可能在网上搜到的问题的解决方案早已过时,信息难以分门别类的存储和即时的更新换代,这是我们最大的损失。
1.2课题目的
随着互联网的发展,人们学习的知识来源也不仅仅局限于口口相传和书籍,互联网已经成为一种高效方便的学习手段,本课题研究的APP是通过标签来整合社区问答的信息,从而方便更多的人来寻找自己想要的答案。基于iOS的即时问答社区APP的想法是通过一个社区平台,将用户的问题、答案通过标签的方式来存储,用户可以通过这些标签来很方便的寻找自己的答案,并且在后续的用户问答中可以通过标签来即时更新已存储的问答信息,这样就可以做到信息的分类和永不过时,这也正是信息的价值所在。也极大程度上方便了用户通过该平台学习的效率。
1.3本文的内容框架
本课题以即时通讯社区为主要开发方向,基于iOS平台、ObjectiveC语言来完成开发工作,后台使用LeanCloud云数据库来管理用户数据和问答归档等数据,使用LeanCloudIM的基于xmpp协议的即时通讯SDK实现用户间的即时通讯。
第一章介绍了课题产品的概况,包括课题的设计背景、设计目的、功能模块等。
第二章介绍了课题研究的开发技术和工具,包括Xcode开发工具、ObjectiveC编程语言及LeanCloud、LeanCloudIM的技术。
第三章介绍了课题产品app的设计,包括功能模块的搭建,业务流程图,云数据的设计等。
第四章介绍了课题产品app的开发详情,包括自己平时在开发过程中封装的工具类,功能模块、业务模块和交互模块的实现。
第二章 相关技术介绍
本章介绍了开发APP所用到的开发环境、开发语言及其他接入技术。通过全面的描述,阐述本项目中用到的工具、语言及其他技术。
2.1 Xcode开发工具介绍
Xcode 是运行在操作系统Mac OS X上的集成开发工具(IDE),由苹果公司开发。Xcode是开发OS X 和 iOS 应用程序的最快捷的方式。Xcode 具有统一的用户界面设计,编码、测试、调试都在一个简单的窗口内完成。
Xcode支持ObjectiveC和Swift两种编程语言。本次设计采用ObjectiveC作为编程语言。
2.2开发语言ObjectiveC
ObjectiveC,通常写作ObjC或OC和较少用的Objective C或ObjC,是扩充C的面向对象编程语言。
ObjectiveC是编写以下应用的利器:
?iOS操作系统
?iOS应用程序
?Mac?OS X操作系统
?Mac OSX 上的应用程序
ObjectiveC的流行归功于iPhone的成功。编写iPhone应用程序的主要编程语言是ObjectiveC。
2.3 LeanCloud技术
目前,大部分公司开发一款具备联网功能的移动课题产品,需要有专门的后端人员,搭建专门为前段服务的数据库。这对于个人开发者来说,提高了做互联网产品的门槛。
LeanCloud云数据库的服务出现,可以提供第三方标准化的数据库服务,让一个前段开发人员独立能够开发一款带后端的联网应用。而代价只是需要了解数据库的基础。
此外,LeanCloud还提供诸如及时通讯服务、推送服务等功能,提供高效稳定的功能,而这一些功能靠个人的时间,将是大量的资源投入(服务器资源,专业的开发,时间投入,人员投入)。
2.4 LeanStorage 云数据库服务
抛开后端系统开发负担,专注用户体验和前端实现,加速课题开发进度,更快赢得市场。
BaaS:backend as service 后端即服务,不再理会「应用服务器」、「数据服务器」,不再担心流量和压力
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/2154.html