首页 > 其他分享 >《架构漫谈》读后感

《架构漫谈》读后感

时间:2023-02-21 15:45:15浏览次数:40  
标签:读后感 架构 漫谈 问题 切分 软件架构 软件 架构师

近几天在老师的推荐下,读了架构漫谈,《架构漫谈》是由资深架构师王概凯 Kevin 执笔的系列专栏,专栏将会以 Kevin 的架构经验为基础,逐步讨论什么是架构、怎样做好架构、软件架构如何落地、如何写好程序等问题。

什么是架构?

软件架构的核心目的,就是解决如何以最少的成本、最低的风险,完成系统的设计、开发和测试工作。

软件架构师:定义和分析系统要解决的问题,制定解决方案和策略,并实施和测试这些方案。

架构师:规划、设计以及管理一个软件系统所需的资源。

在组织中负责对特定领域知识进行整合,并运用该知识对更大范围内的多个目标进行规划。

架构师:负责指导设计项目中其他人员进行开发工作。在软件项目开发过程中,架构师主要负责:1)系统架构;2)项目设计;3)软件开发;4)文档管理。

架构是一系列用以创建和实施软件系统、业务流程及组件等元素的方法或原则。

架构解决谁的问题

架构解决的是人的问题。软件实际上就是把现实生活模拟到计算机中,并且软件是需要在计算机的硬件中运行起来的。要做到这一点需要解决两个问题:1业务问题2.计算机问题。这就是软件比较复杂的地方,涉及到软件本身的业务体系,和所虚拟的业务体系。架构师通过分析和抽象,将各种需求和问题分解成一些可以管理和协调的部分。

如何做好关于架构的切分的问题

架构的切分,在本质上都是对相关人的利益的调整。切分问题的关键是要从全局的角度去看,要从整体上考虑问题,而不是就业务细节去切。

切分的原则,要便于不同的角色,对切分出来的部分,并行或串行开展工作,一般并行才能减少时间。并对这些切分出来的部分,设立沟通机制。根据前者,使得这些部分之间能够进行有机的联系,合并组装成为一个整体,完成目标系统的所有工作。

如何从架构师的角度写好代码理清技术、业务与架构的关系

1.不做系统的设计者,而要做架构师

2.架构师不仅仅是用代码去完成任务,更是在设计架构

3.如何画出合理的框架

4.设计时一定要考虑代码的性能问题

5.用数据驱动实现业务逻辑

6.学会运用工具,辅助开发工作

7.不要用一套设计原则去解决所有问题

8.“完美”未必是“正确”的!避免完美主义

9.不要总是按照自己的想法来写程序,有时候按用户的需求来做代码也可以

10.最好的架构是多个程序员一起来完成的!要学会与他人协作、沟通和分享信息

小结

架构师应该承担起解决业务问题的这个角色来,专注于Business Domain和软件本身的架构,让技术人员致力于为业务在计算机中跑起来而努力。只有把这两者很好的结合起来,才能更好地完成业务的目标,才会让软件更好地服务于大家。最终一定会得到一个很好的软件架构,令软件开发团队和业务部门都能够很好地开展工作并降低成本。

标签:读后感,架构,漫谈,问题,切分,软件架构,软件,架构师
From: https://www.cnblogs.com/ysh030330/p/17141207.html

相关文章

  • 微服务架构中的用户认证方案
    传统的用户认证方案我们直奔主题,什么是用户认证呢?对于大多数与用户相关的操作,软件系统首先要确认用户的身份,因此会提供一个用户登录功能。用户输入用户名、密码等信息,后台......
  • 实践篇(三):如何有效评审软件架构图?
    作者:京东科技 倪新明设计意图的传达是架构可视化关注的重要维度,在技术方案评审过程中不可避免的会出现各种各样的架构图或设计图,这些图形化表述在设计意图传达效果层面表......
  • Spring Boot + Vue3 前后端分离 实战 wiki 知识库系统<二>---后端架构完善与接口开发
    数据库准备:在上一次https://www.cnblogs.com/webor2006/p/17114996.html已经将SpringBoot相关的配置环境给搭建好了,接下来则需要为咱们的项目创建一个数据库。1、mysql的......
  • ETL的架构设计和实现及其优势
    目录ETL的架构ETL架构的优势:离线ETL的架构设计离线ETL的模块实现数据分片(Split)数据解析清洗(Read)多文件落地(Write)检测数据消费完整性(Commit)参考链接ETL的架构ETL架......
  • 地理图形标记语言GML的架构及范例
    一、前言在信息高速公路的时代,如何能在不同的GIS系统间实时分享资料,是刻不容缓的问题,现在该问题已经有了一个很好解决案,那就是以XML为基础的GIS编码标准,称为地理图形标记......
  • 互联网架构的演进的历程
    单体架构设计何为单体架构?所有业务都在同一台web服务器上,web服务器和数据库服务器部署在同一台电脑上。单体架构的特点?优点:部署简单,维护方便。缺点:存储能力有限,计算......
  • 项目开发软件架构选择指南
    从系统的组织和部署结构方面来看,软件架构的演化进程显然有着从简单到复杂的趋势。那是否最新最复杂的架构就是目前业界选择的最佳架构呢?非也。没有最好的架构,只有最合适的......
  • 大规模 IoT 边缘容器集群管理的几种架构-1-Rancher+K3s
    前文回顾大规模IoT边缘容器集群管理的几种架构-0-边缘容器及架构简介......
  • CSS架构之BEM设计模式
    为什么需要CSS架构?其实在日常开发CSS当中,会遇到许多的问题,使用设计模式能够很好的解决。例如在日常开发项目,需要组件化时,组件内部的class样式类管理就非常的杂乱。大部分公......
  • 基于Vue3+TS的Monorepo前端项目架构设计与实现
    写在前面你好,我是前端程序员鼓励师岩家兴!去年在另一个项目https://juejin.cn/post/7121736546000044046中,我向读者朋友们介绍了结合npm包管理工具yarn作vue3项目的monorep......