• 架构漫谈 读后感2


    什么是架构?把一个整体切分成不同的部分,由不同的角色来完成这些分工,并通过建立不同部分相互沟通的机制,使得这些部分能够有机的结合成一个整体,并完成这个整体所需要的所有活动即是架构。那么为什么会产生架构呢?1、必须由人执行工作2、每个人的能力有限3、每个人的时间有限4、人对目标系统有更高的要求5、目标系统的复杂性使得单个人完成这个系统满足条件2、3。

    要做好架构,首先需要能够正确的认识概念,能够发现概念背后所代表的问题,这样才能为一个好的架构打下基础。概念的不同可能就会导致认知的不同,最终会影响整个系统的构成。然后我们需要识别问题。解决问题,我们需要找出问题的主题,不能知其然不知其所以然。我们需要定位出这个问题是谁的问题(确定主体)以及有什么问题(确定内容)。有时候问题的产生是因为沟通的误解,或者主观上的有很多不必要的利益诉求导致的。对于一些仍然存在的问题我们接下来需要对其有所动作,做相应的调整,即进行构架的切分。

    那么为什么要进行切分?1、某个或者某些利益相关人负载太重2、时间上的负载太重3、空间上的负载太重4、某个或某些利益相关人的权利和义务不对等。那么应该怎么切分呢?1、必须在连续时间内发生的一个活动,不能切分。2、切分出来的部分的负责人,对这个部分的权利和义务必须是对等的。3、切分出来的部分,不应该超出一个自然人的负载。4、切分是内部活动,内部无论怎么切,对系统的外部应该是透明的。实际上切分的过程就是建模的过程,每次对大问题的切分都会生成很多小问题,每个小问题就形成了不同的概念。这就回到了构架的首个步骤——正确的认识概念。

    软件构架,那么软件是什么?它是用来控制硬件的行为的工具。它将现实生活模拟到计算机中,提供了更低成本、高效率的生活。随着软件的发展以及日益增加的需求,软件架构出现了,它用来提升利益、降低成本。谈及软件架构时,我们要讲清楚,究竟是部署的架构还是代码的架构。软件架构的落地,需要软件的组织结构和流程来保障。

    什么是架构师?架构师是要去平衡别人的利益,他需要全心全意的为别人服务,这样架构师才能拥有强有力的影响力。架构师必须是一个组织的领导人,有权利调动这个组织的架构。才能更好地发挥架构师的作用,更好地把利益的调整落到实处。倘若架构师没有这种权利,那么势必会造成内部的不必要冲突,导致这些流程流失于形式。

    业务、技术与架构之间的关系。1、技术是为了解决业务的问题而产生的,没有业务,技术就没了存在的前提2、在解决同一个业务问题的前提下,更高效,更低成本的技术,会淘汰低效,高成本的技术,这是人类利益技术所决定的。技术人员与业务人员二者经常产生冲突,因为技术人员很多时候关心的技术与业务的主要目标往往不是对应的,业务也是负责一部分的业务,也不是和业务的主要目标直接对应的。架构师应该承担起解决这个问题的角色来,专注于软件本身的架构,让技术人员致力于在计算机中跑起来而努力。只有把二者很好的结合起来,才能更好的完成业务的目标,才能让软件更好地服务大家。,最终一定会得到一个很好的软件构架,令软件开发团队和业务部门能够更好地开展工作并降低成本。如今已经存在很多技术,而这些技术却与我们要解决的问题不那么直接对应时,我们就需要有意识的组织和识别不同的技术,来实现业务的目标。其中成本最低的方法就是按照要达成的目的和的当前的问题,从上而下的进行架构分析,分析出来的更细粒度的问题,分解到不同的人来解决,这就形成了业务架构和组织架构。所以架构师需具备准确识别采用什么技术的能力,减少长期的成本,增加收益。

    转载于:https://www.cnblogs.com/hzxsg0919/p/6488806.html

  • 相关阅读:
    hibernate中session的获取使用以及其他注意事项
    博文收集
    struts1标签-<html:radio> 使用注意事项
    HTTP 状态码含义
    基于eclipse搭建android开发环境-win7 32bit
    MySQL数据库之数据类型
    mysql数据库之基本增删改查
    mysql数据库之表的操作
    协程(单线程实现并发)
    线程
  • 原文地址:https://www.cnblogs.com/lx06/p/15969506.html
Copyright © 2020-2023  润新知