PC客户端的互联网化设计

标签: pc 客户端 互联网 | 发表时间:2015-06-21 08:22 | 作者:oceanlucy
出处:http://blog.csdn.net

        伴随着手机,平板电脑为代表的移动互联网的不断发展,云计算和云服务的兴起,更是推动着传统企业不断地往互联网方向转型。作为Windows客户端程序员,自己也在时刻地警醒着:要抛弃传统软件开发思维,努力学习互联网思维。互联网+,这一个充满着机遇的经济新形态,让所有传统企业都感觉到挑战和希望。而最后能否突围成功,则在于是否能用互联网思维去解决问题。

        好的,大层面讲完,该聚焦到具体的细节上。传统PC客户端开发都采用C/S架构,即服务器/客户端。例如在用户电脑上安装客户端和本地数据库,客户端与服务器端进行通讯;又或者是直接把数据库安装在数据库服务器上。其开发采用的数据库无外乎是MS sql2000和Oracle等等,而数据库安装和维护是一个难题。

        一般的PC客户端软件几乎集成了所有的功能,界面人机交互和业务处理逻辑都包含其中,这样由于代码质量,现场环境和用户使用习惯等等,往往会容易出现不同的错误。这些都需要技术支持去帮助客户,甚至要到客户现场去。一旦产品用户数量到了一个大数量级,呵呵,公司的运维成本会显著提高。不仅如此,传统软件开发周期冗长,流程繁琐,已经不适应现今的互联网节奏了。

        因此,为了更加清晰地说明客户端的互联网化设计,现举例公司新产品采用的新型架构设计模式:互联网模式。

         双进程模式:

        1、主进程主要是用于界面展示,用户业务数据输入和人机交互等等,采用C++界面库来实现;

        2、副进程是一个http服务器,它负责数据处理、数据存储和云端交互,是一个数据引擎(跨平台编译,支持Windows、Android和IOS平台);

        3、它们之间的请求交互通过http协议来进行通讯,并采用Json数据格式进行传输。

        本地数据库:

        采用了sqlite3,它是一款轻型的数据库,占用资源小,并且经常用在嵌入式设备中。不用安装,十分方便。

        客户端架构图:


          系统架构图:


        优点:

        1、业务逻辑不写死在客户端,放到服务器端操作,统一版本,减少碎片化,增强灵活性。

         如果把业务逻辑写在客户端上,一旦它变化,客户端就必须要修改代码,版本就要升级。而我们是不强迫用户升级的,这样就不能全网覆盖,造成版本碎片(这里也是浏览器端和客户端的一种区别);

        2、分工清晰,高效开发,聚焦细节,更能实现敏捷开发的快速迭代;

        客户端只负责界面实现,网络核心通讯和基本业务数据处理;服务器端负责数据库创建,处理,存储和通讯交互,每个人聚焦的点不大,但是却能更让开发者有更多精力和时间设计开发。

        3、有了云端的交互,云同步功能可以支持多终端,多地点了,并且支持本地脱机数据,真正做到了随时随地看数据了。

        除了架构模式,开发流程管理也要做到互联网化:快速迭代,小步快跑,快速试错,大目标拆分为小目标。其中最有名的是Scrum敏捷开发,现介绍其开发模型,如下图所示。


          什么是Sprint?

         Sprint是短距离赛跑的意思,这指的是一次迭代,而一次迭代的周期是4个星期。

          流程讲解:

        1、PM确定Product Backlog(按优先顺序排列的一个产品需求列表),然后做工作量的预估和安排;

        2、通过 Sprint计划会议中挑选出一个Story作为本次迭代完成的目标,这个目标的时间周期是1~4个星期,然后再进行细化,形成一个Sprint Backlog;

        3、每个Scrum Team成员根据Sprint Backlog再细化成更小的任务(工作量能细化到2天内完成);

        4、每次Daily Scrum Meeting(每日站立会议)须控制在15分钟左右,每人都要发言。要汇报你昨天完成了什么,并承诺你今天要完成什么,同时可以提出一些难以解决的问题,然后在白板上更新自己的 Sprint burn down(Sprint燃尽图);

        5、每天都要有一个可以成功编译、并且可以演示的版本;

        6、当一个Sprint Backlog被完成,我们要进行 Srpint Review Meeting(演示评审会议)。产品负责人和客户都要参加,每一个Team成员都要向他们演示自己完成的软件产品;

        7、最后是 Sprint Retrospective Meeting(回顾会议),以轮流发言方式进行,总结改进的地方,然后放入下一轮Sprint的产品需求中。

        互联网是一个充满神奇和希望的地方,无论你是开发移动APP端或者windows客户端,都不应妄自菲薄。我们应该用心去做好产品,时刻站在用户的角度,跟随时代潮流,把用户体验和产品体验做到极致,那么我们就是成功的。

        加油吧,蛋炒饭!



作者:oceanlucy 发表于2015/6/21 0:22:50 原文链接
阅读:147 评论:1 查看评论

相关 [pc 客户端 互联网] 推荐:

PC客户端的互联网化设计

- - CSDN博客推荐文章
        伴随着手机,平板电脑为代表的移动互联网的不断发展,云计算和云服务的兴起,更是推动着传统企业不断地往互联网方向转型. 作为Windows客户端程序员,自己也在时刻地警醒着:要抛弃传统软件开发思维,努力学习互联网思维. 互联网+,这一个充满着机遇的经济新形态,让所有传统企业都感觉到挑战和希望.

网易云音乐Vs酷狗音乐PC客户端竞品分析

- - 人人都是产品经理
首先看看音乐播放器在用户多媒体APP中所占的比重. 截至2015.6.6各平台中音乐APP的下载排行,网易云音乐占7.8名,酷狗第一. 在分析网易云音乐之前,先对市场上各种音乐播放器做一个大概的功能解析. 大平台/专题MV/线下盛典活动. 无损专区/资讯专题/原创音乐人/. 百度king榜/乐播(类似主播).

豆瓣移动互联网之路:巨大的解放 PC依旧重要

- - TechWeb 今日焦点 RSS阅读
  腾讯科技讯(Lois)1月12日消息,一年一度的极客公园创新大会上,极少亮相的豆瓣创始人杨勃再次在这里现身. 在接受极客公园创始人张鹏的采访中,杨勃介绍了豆瓣的商业化节奏和移动互联网带来的新世界.    豆瓣商业化:行业变化让一些事情变得可能.   在2012年,豆瓣上线了众多付费项目,如豆瓣阅读上的付费电子书、豆瓣FM的Pro版,以及豆瓣电影票功能.

UC俞永福:互联网公司将遭遇PC流量下降尴尬

- - VooSee - 拮取生活中的彩虹
]俞永福判断,今年6月到明年6月,中国所有PC互联网公司PC流量都会到头,已经不是涨不动的问题,而是明年6月份之前都会逐步下降,这是每个人不得不面对的现实. 优视科技CEO俞永福(腾讯科技配图). (雷建平)9月10日消息,移动互联网入口已越来越成为互联网巨头必争之地,UC董事长兼CEO俞永福在接受腾讯科技专访时表示,互联网巨头更重视移动互联网布局背后,是所有互联网企业将面临PC流量下降的尴尬.

门户比拼移动新闻客户端 搜狐定位PC阅读差异化

- - TechWeb 今日焦点 RSS阅读
  【TechWeb报道】2月6日消息,面对移动互联网如火如荼的发展态势,门户网站正在加速布局移动新闻客户端.   春节期间,搜狐悄然发布了多个移动平台的新版新闻客户端,搜狐新闻客户端登上App Store新闻类客户端榜首,在App Store竞争激烈的背景下,这次排位窜升引起业界关注.   数据显示,搜狐这次同时推出的几个平台新版客户端均获得较大好评度,其中,安卓平台客户端获得开奇商店、安卓市场、机锋网等超过三十个安卓应用商店联手推荐,而iPhone平台还荣登App Store新闻类排名第一,总装机量超过1300万,日活跃用户突破240万.

百度移动互联网趋势报告解读:PC、手机浏览器没落和 App 困境

- - TECH2IPO创见
百度今天正式发布《 2013 年 Q1 移动互联网趋势报告》. 这是一个例行季度报告,每期不乏看点. 值得移动互联网从业者尤其是创业者、移动互联网观察者和爱好者关注. 一、移动互联网拉大与 PC 差距. 移动互联网正逐步吞噬 PC 互联网的时长、流量和人气. 尤其是在去年 7 月的里程碑事件之后:百度去年 Q4 报告显示,移动设备时长历史性地超越 PC.

JavaScript PC 模拟器

- kira - LinuxTOY
很难想象竟然用了这么久,Linux 才可以运行在浏览器的 JavaScript 引擎里面,要知道2008 年就可以在土豆上运行了~. 作者 Fabrice Bellard 使用 JavaScript 编写了一个简单的 PC 模拟器,包含32位 x86 兼容 CPU、8259 可编程中断控制器、8254 可编程中断计时器.

MongoDB 客户端 MongoVue

- - haohtml's blog
今天在同事那里看到了一个很不错的MongoDB的客户端工具MongoVue,地址是 http://www.mongovue.com/. 做的不错,1.0版本的开始收费了,费用也不贵才35$. 真正需要的同学可以掏点钱买个吧,也算是支持这个工具,如果只是学习研究用的话我这里还有一个0.9.7版本,虽然比起1.0版来说有些bug,平常使用也够了,需要的同学可以单独联系我.

[转]memCached 客户端

- - 小鸥的博客
memcache客户端下载. 许多Web应用都将数据保存到DBMS中,应用服务器从中读取数据并在浏览器中显示. 但随着数据量的增大、访问的集中,就会出现RDBMS的负担加重、数据库响应恶化、 网站显示延迟等重大影响. memcached 是以LiveJournal 旗下Danga Interactive 公司的Brad Fitzpatric 为首开发的一款软件.

客户端·优化

- - 博客园_首页
网络连接和初始HTTP请求. 浏览器检索网页,先从URL开始,使用DNS确定IP地址,再用基于TCP和HTTP协议连接到服务器,请求相关的内容,得到相应,浏览器解析并呈现到屏幕上. 服务器响应后,浏览器响应不会同时全部到达,会陆续到达,有时候之间还会有时间间隔. 页面解析和新的资源请求浏览器等待数据包时,会解析得到包,并寻找可用新的HTTP请求,并启动,每一个服务器,浏览器一般最多同时打开两个请求连接.