• 《架构漫谈》读后感


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

     

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

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

    第四篇介绍的是架构的切分,我个人认为这个过程就是分工的过程,在这个过程中,要与负责人的承载能力相符合,根据实际情况切分。实际上切分的过程就是建模的过程,每次对大问题的切分都会生成很多小问题,每个小问题就形成了不同的概念。最终结果都会体现在组织架构上,只有这样才能够让架构落地并推进。架构也是分层的过程,层数越多沟通越多,效率越低,分层要越少越好。尽可能变成一颗平衡树,才能让整个系统的效率最大化。

    第五篇介绍的是用架构的思维,更好的设计和实现软件。软件的架构出现过程,和之前的架构出现的过程也是一样的,先是从一开始懵懂的写软件,到后来慢慢的学会切分,再后来就成为了架构。这个背后的动力也是一样的,就是提升参与的人的利益,降低成本。软件工程师的职责在这个浪潮中,不堪重负,自然而然就分拆为不同的角色,形成了一个独特的架构体系。这一切的背后,仍然是为了提升人类自己的利益,解决人类自己的问题。

    第六篇这篇的内容就是将架构与软件结合起来,这就是软件比较复杂的地方,涉及到软件本身的业务体系,和所虚拟的业务体系。软件因为流量增大而分拆成不同的运行单元,在不同的机器上部署所形成的架构,属于软件架构。每个运行单元为了让不同角色的人,比如前端,业务,数据存储等能够并行工作,所分成的代码架构,也属于软件架构。架构的意义就是不管怎么分拆,所达到的目标没有任何变化,就是完成业务在计算机中的虚拟化。

    第七篇介绍了架构师这个职位的重要性,架构师要解决的是别人的问题,不是自己完成工作的问题。架构师必须是一个组织的领导人,有权利调动这个组织的架构,才能够更好的发挥架构师的作用,更好的把利益的调整落到实处。我认为一名架构师,在技术上需要有足够的自信,这样才能够去领导别人去做软件,同时也会受到信服。当遇到问题时,能提出解决问题的成本最低的方案,就是一名架构师应该做的。

    作为软件从事的人员,还是要着手于代码方面,所以在第八篇中,就是说的从架构的角度写好代码,在写代码的过程中,最重要的就是逻辑方面的问题,不合理的逻辑结构,都会导致架构无法快速的横向扩展和分拆,并且增加了修改的成本,这些是不符合开发人员以及业务的利益的。写代码的时候让该出现逻辑的地方出现逻辑,让不该出现的地方不能出现。一旦不该出现的地方出现了逻辑,那么要马上意识到,这个地方是一个坑,这个问题一定和业务的分析不透彻有关系。

     

    最后,我认为也是关键的一点就,就是理清技术,业务,架构这三者的关系,技术是为了解决业务的问题而产生的有了技术之后才出现了架构的概念,

    所以,准确识别采用什么技术的能力,也是架构师所要具备的能力之一。考虑的主要因素也是长期的成本和收益。

    所以,结合当前自己所处的阶段,我认为应该多阅读这方面的内容,从深层次的角度去理解认识架构,这样之后才能独立解决问题。

     

  • 相关阅读:
    汽车行业如何利用大数据
    汽车行业如何利用大数据
    Linux下Gcc 的编译过程
    第一个GraphX程序
    VC++ 模拟"CLICK事件"关闭指定窗体
    基于Canvas的Char.js库使用
    VELT-0.1.6开发:载入根文件系统
    HDU 5411 CRB and puzzle (Dp + 矩阵高速幂)
    JavaScript图片裁剪
    C++ string中的几个小陷阱,你掉进过吗?
  • 原文地址:https://www.cnblogs.com/wys-373/p/10503373.html
Copyright © 2020-2023  润新知