当前位置: 首页 > news >正文

wordpress4.7英文版百度seo灰色词排名代发

wordpress4.7英文版,百度seo灰色词排名代发,旅游网站设计,西安模板网站建设目录 零:前言 一,基于服务的架构 二,基于多进程多线程的架构 三,以数据为中心的架构 四,类Android的分层架构设计 五,总结 零:前言 谈到架构,可能大家的第一感觉是信息系统的…

目录

零:前言

一,基于服务的架构

二,基于多进程多线程的架构

三,以数据为中心的架构

四,类Android的分层架构设计

五,总结


零:前言

谈到架构,可能大家的第一感觉是信息系统的架构,比如搞Web、Java相关的系统。其实不然,架构存在于计算机相关系统的各个部分,不论是底层还是上层,不论是单机程序还是联网系统,都涉及架构,只不过大家关注的重点不同而已。比如,CPU内部实现我们多认为是硬件设计,但其实是涉及架构的,而且架构很重要。本质上将,架构是很多决策的组合。做一件事,为什么选择这种策略方案,而放弃另外一种方案,这就是架构师要做的事情。

虽然架构是一个比较宽泛的概念,但是,架构师却是具体的。要成为一位合格的架构师,需要掌握不少的专业技能,这是不争的事实。架构师需要对自己面对的领域,在一定的抽象层次上,要有足够的大局观,并具有全局的掌控能力。

上面说的都有点虚,这里我们缩小范围,主要说说终端设备上的软件架构。

博主最近离职了,于是有点时间整理之前的资料。回顾做终端开发这十几年,发现每一款产品都采用了不同的架构。更发现每一种架构,都似乎比较契合当时的产品特点(至少回过头来看,个人感觉是符合的)。这里整理一下,做个总结。

在正式上架构图之前,补充两点。终端软件,尤其是涉及嵌入式开发,往往既涉及硬件又涉及软件。特别是功能比较多的嵌入式产品。极端点,像Android,就是这样一个典型代表。较多的硬件关联还比较好理解,这里强调的软件,意义何为?其实,主要是说,这类设备上的软件开发,跟桌面和服务器端的软件开发,差别并不大。操作系统、数据库、网络、多媒体的掌握,可能一样都不能少,另外呢,对建模方法、设计模式的应用上,跟x86上的开发,也并没有太大差别。之前博主在谈论架构时,提到的相关技术,就这里所提场景而言,是都需要掌握的。

参见:剑指架构师--不是前驱还是后驱的问题,你需要四驱_龙赤子的博客-CSDN博客

做Java类开发的人员,看了这些,可能很难想象,做嵌入式开发,也需要掌握这些技能。

好了,回归主题,下面博主就说说自己做过的四款产品的架构情况。

一,基于服务的架构

整理的框图如下:

 这是一款家庭网关产品。因为涉及很多网络服务,所以是基于开源路由器DDWRT(现在流行的分支是OpenWRT)开发的。整个系统有一个大的控制模块,类似状态机管理,然后有很多的小服务,许多功能就是这些服务的组合。状态机接收用户功能请求,决定关闭或启动哪些服务,来实现功能要求。服务本身也做了封装,提供了启动、停止、重启等基本接口。

基本我们也能感受到,在这种具有很多网络相关功能的产品中,采用服务化的架构,整体而言,还是比较贴合的。很多开源软件被简单二次封装后,就可以直接发挥作用,减少了开发量。

二,基于多进程多线程的架构

同样,先上图:

这是一款IPTV产品。不同于上面的网关产品,很多功能有标准化的感觉,这种产品,功能都是自家定义的。所以,开源的组件更多是做底层支撑,并不能直接用了面向用户,所以就做了二次封装。为了简化使用,产品提供了一个简单的框架化封装。大家基于该框架化封装,能够比较灵活的实现各自的功能模块,同时由于标准接口的存在,功能之间的通信,也比较方便。总体而言,是一个平衡复杂度和成本及周期的选择。博主也有文章专门介绍这块:基于多进程架构的嵌入式软件框架研究与实现_龙赤子的博客-CSDN博客_多进程软件架构

三,以数据为中心的架构

这是一个家庭媒体网关类产品。同样是网关产品,但是跟之前的家庭网关产品差别较大。之前的网关产品,网络功能本身占比比较大,额外的提供了一个独立的媒体功能。但是,这款产品,媒体占据了主要功能,网络部分则只是正常的通信基础。这里媒体网关的意思是媒体资源的集散地,用户可以通过各种手段,从该设备上获取媒体。比如,使用手机通过该产品看电影(电影在该媒体网关上,手机只是充当了屏幕)。另外,也可以将屏幕转移到电视、电脑。

简单了解产品后,我们来看其架构。这里采用了以数据为中心的架构。这里的数据,主要指媒体资源。数据从哪里来,经过哪些路径,到哪里去,是架构主要关注的点。所以,架构中,根据不同的场景,设计了数据流程图,然后围绕数据流,做相关的辅助设计。在整个数据流中,需要什么支持,就增加什么模块。比如编解码等。

这个跟很多媒体处理类产品的通用思路是一致的。

四,类Android的分层架构设计

类似Android,提供硬件抽象、框架、服务等层次,这款富媒体功能产品,也采用了分层的架构。对各种开源协议和软件,都是二次封装后,提供平台层供业务层来使用。相比之前的产品,封装层次更深。这是为了更好的应对不同硬件平台,不同的业务而做出的决策。

因为产品本身的功能特点跟Android类似,虽然不是以一个一个APP的表现形式来提供功能,但是内置的一个一个的功能点,就像Android上的APP,多而杂。这种情况,使用上述的分层架构更合适,对于功能的扩展的支持,也会更加有力。

五,总结

从上面几种架构的介绍,我们可以看出,没有什么通用的、最好的架构,只有最合适的架构。架构是一组决策,它的构成,不仅取决于产品本身的特点,还受组织结构的影响(人员构成、技术特点等)。能够灵活运用基础知识,因地制宜的做出选择,这样形成的架构才是好架构。

http://www.hkea.cn/news/603724/

相关文章:

  • 秦皇岛汽车网站制作数字营销工具
  • 培训教育的网站怎么做东莞做网站的联系电话
  • 云南做网站的公司外贸谷歌优化
  • 网页设计学徒培训可试学巢湖seo推广
  • 让顾客心动的句子seo模拟点击软件源码
  • 设计类专业包括哪些kj6699的seo综合查询
  • 手机网站制作哪家好查关键词
  • 米拓企业网站管理系统电商培训机构排名前十
  • 做效果图有哪些网站seo点击排名
  • 网络营销推广网站收录seo推广排名平台有哪些
  • 产品经理如何看待网站开发广州软件系统开发seo推广
  • wordpress 忘记管理员如何做网站seo
  • app和网站哪个有优势淘宝关键词排名
  • wordpress该域名宁波网站seo公司
  • 建购物网站怎么建呀简单的网站建设
  • 江苏省建设教育协会网站首页百度知道合伙人答题兼职入口
  • 做优化的网站平台搭建
  • 做网站需要多久网络推广是什么专业
  • 厦门加盟网站建设线上推广营销
  • 定制网站案例seo搜索引擎优化薪酬
  • 网站制作成功后怎么使用浏览器观看b站视频的最佳设置
  • 一家专门做开网店的网站北京seo专员
  • 专业企业网站搭建服务头条权重查询
  • 去哪儿网站上做民宿需要材料免费的黄冈网站有哪些平台
  • 网站建设网现在推广什么app最挣钱
  • 嘉兴装修公司做网站安装百度到桌面
  • 电商网站特点外贸营销网站建站
  • 上海市住房城乡建设管理委员会网站网络营销软文范例大全800
  • 莱芜区政协网站做网络优化的公司排名
  • 太原网站建设开发公司电商运营基本知识