zoukankan      html  css  js  c++  java
  • 读架构漫谈 有感

    什么是架构

    缘起

    一直以来,在软件行业,对于什么是架构,都有很多的争论,每个人都有自己的理解。甚至于很多架构师一说架构,就开始谈论什么应用架构、硬件架构、数据架构等等。我曾经也到处寻找过架构的定义,请教过很多人,结果发现,没有大家都认可的定义。套用一句关于 big data 流行的笑话,放在架构上也适用:

    事实上,架构在软件发明时的 N 多年以前,就已经存在了,这个词最早是跟随着建筑出现的。所以,我觉得有必要从源头开始,把架构这个概念先讨论清楚,只有这样,软件行业架构的讨论才有意义。

    架构漫谈是由资深架构师王概凯Kevin执笔的系列专栏,专栏将会以Kevin的架构经验为基础,逐步讨论什么是架构、怎样做好架构、软件架构如何落地、如何写好程序等问题。专栏的目的是希望能抛出一些观点,并引发大家思考,如果你有感触或者新的感悟,欢迎联系专栏负责人王深聊。

    1.根据要解决的问题,对目标系统的边界进行界定。

    2.并对目标系统按某个原则的进行切分。切分的原则,要便于不同的角色,对切分出来的部分,并行或串行开展工作,一般并行才能减少时间。

    3.并对这些切分出来的部分,设立沟通机制。

    4.根据 3,使得这些部分之间能够进行有机的联系,合并组装成为一个整体,完成目标系统的所有工作。

    架构是为了解决的人的问题,找出问题的主体,是做架构的首要问题。要思考“是解决谁的问题”,先找到是“谁”,再去分析所需解决的问题。识别出问题后,对于确实有问题的部分要根据利益进行切分。切分的

    架构漫谈共分为了九篇,我认为他是先从架构的概念开始介绍,然后解释了架构的作用即所解决的问题,最后是从架构的角度去理解,写好代码。

     在第二篇文章中,作者以桌子为例,解释了架构,说明了人们常进入的误区,要做好架构所首先必须具备的能力,就是能够正确的认识概念,能够发现概念背后所代表的问题,进而才能够认识目标领域所需要解决的问题,这样才能够为做好架构打好基础。同时掌握好架构概念并应用与学习新知识的过程,可能就会效率更高,正确的解决问题。

    在第三篇中,主要是告诉我们要正确的认识问题,因为作为一名软件的开发人员。首先要解决的就是用户的需求,但是更多的时候,用户自己对想要的也描述不清楚,这就造成了用户对产品不满意。而我们能做到的最好的方法就是,找到问题的主体,找到主体之后便能准确的确定边界问题,找到问题之后便可以很快的去解决。

    我理解架构是复杂问题简单化,简单问题模式化,模式化就是切分

    关于切分小结

    1.架构的切分的导火索是人的负载太重。

    2.架构的切分实际就是对 stakeholder(利益相关者) 的利益进行切分或合并,使得每个 stakeholder 的权责是对等的,每个 stakeholder 可以为自己的利益负责。

    3.架构切分的最终结果都会体现在组织架构上,只有这样才能够让架构落地并推进。

    4.架构切分的结果一定是一个树状,尽量扁平化。

  • 相关阅读:
    eclipse 下载 WindowBuilder
    CLOB、BLOB , CLOB与BLOB的区别
    rpm 安装并配置MySQL(包含指定数据存储路径)
    此Flash Player 与您的地区不相容,请重新安装Adobe Flash Player问题解决
    Eclipse 如何添加 更换字体(转载)
    Eclipse安装WebJavaEE插件、Eclipse编写HTML代码(综合问题统一记录)
    关于hp proliant sl210t服务器raid 1阵列配置(HP P420/Smart Array P420阵列卡配置)
    LINUX下EFIBOOTMGR的使用,删除UEFI主板多余启动项和添加启动项
    安装Linux系统时LSI RAID卡的驱动挂载
    IBM x3250m5安装redhat 6.5 加载raid卡驱动
  • 原文地址:https://www.cnblogs.com/yang-qiu/p/12334263.html
Copyright © 2011-2022 走看看