zoukankan      html  css  js  c++  java
  • 什么是架构?

    什么是架构?

    生活中总是看到充斥着各种架构词汇,如下图

    又例如我现在所在的部门负责的技术架构

    架构的本质是以拆分生命周期的方式来做增长

    什么是生命周期

    生命周期:事物的生老病死
    人每一天的活动,眨一次眼、吃一口饭,都是一个生命周期,生命周期又包含生命周期,每个生命周期都有一个主体
    以<用户购买>生命周期为例,可以拆分成

    1. <物品选购>(物品意向)
    2. <物品执行购买>(购买行为)

    拆分出来的物品选购可以外包,例如导购、网上购物、智能推荐

    为什么会产生架构

    人最终都会消逝,而人总想活得更久、占有更多、享受更多,如何才能延长自己的生命?
    同样的时间创造出更多的产出,相当于把自己的生命延长了。
    于是有了所谓的时间管理,为了让每份时间更高效,又出现了精力管理
    古代,一个人必须要先种田,完成粮食的产生,并消费粮食,结束粮食的生命周期才能完成能量的获取以维持生命,而粮食的生命周期外包出去后,人类的核心生命周期并没有受到影响,却大大的节省了时间,延长了自己的生命。正是因为有了分工,才形成了人类社会

    什么是核心生命周期

    核心生命周期:必须由自己完成的事
    围绕核心生命周期切分,非核心的生命周期独产出来,并行地开展工作,设立沟通机制,使非核心围绕核心做出贡献
    被切分的生命周期,如果连续的时间内持续执行,就不能切分出去,例如:比如孕妇十月怀胎,不能切分成十个人一个月完成
    稻盛和夫就是一位牛逼的架构师,提出阿米巴经营

    什么是业务

    解决人类问题,支撑人类自身生命周期,使人类获得利益

    什么是技术

    通过人为创造条件,让指定的规律按照人类的意愿发生

    软件的核心是什么

    软件的核心:模拟人类的业务
    软件最早更多的是应用在科学计算,对于大部分行业而言门槛比较高,建立在数学、物理、电子电路等学科
    传统企业业务增长方式:增加人和空间,成本很高,而虚拟空间的增长成本远低于真实空间,拆分生命周期开始转到了虚拟空间。
    以语言类似,很多人学习英语等语言,最终从事语言本身研究的人少之又少,软件主要还是服务于其他行业的,所以我们需要涉猎各行各业的知识,科学、教育、经济、历史、艺术、心理等等。
    不变的规律:让非核心生命周期的处理更少地占用人类的时间,变相的延长人类生命

    软件架构师的职责是什么

    1. 理解业务组织架构,对业务生命周期拆分
    2. 根据业务生命周期对软件开发生命周期进行拆分
    3. 结合两者匹配合适的组织架构

    简单地说:架构师拆分生命周期,技术人员实现生命周期

    技术、业务与架构的联系

    1. 业务是核心,技术是解决业务问题的工具,架构是让业务长大的方法
    2. 架构用技术来实现拆分,而技术需要架构来合理组织以提升效率
    3. 技术为解决业务问题而产生,没有了业务技术也没有存在的前提
  • 相关阅读:
    自定义镜像流程
    go语言中go+select的理解
    go语言中var声明chan、map、指针,注意的情况
    docker SDK 的基本学习
    ubuntu上安装postgres以及在远程连接上的坑
    go语言模板中的os.Stdout标准输出转化为string
    angular7升级到angular8
    sudo不用在输入密码
    go语言简单的执行shell命令
    Ubuntu上面安装docker
  • 原文地址:https://www.cnblogs.com/chenqionghe/p/11338451.html
Copyright © 2011-2022 走看看