按图索骥,快速做好架构图
架构图是程序员必备的技能之一。很多同学觉得老是画不好架构图,且经常无从下手,那就看看下面这篇文章,笔者整理分享了关于架构图的相关内容,需要了解相关知识的同学可以进来看看哦!
许多的小伙伴坦言画不好架构图,因为有很多困难阻碍了他们的进阶之路。
当你想用一张或几张图来描述你的系统时,经常对着画布无从下手、删了又画;不知道如何用一张图描述你的系统,让各部门同事一目了然;图画一半发现不清楚给谁看;布局怎么画都不满意······
当然你可能还面临更多细碎的问题,让你画架构之路举步维艰。如果你有以上诸多困惑,也许今天的分享能够让你对架构图的认识更清晰。
一、什么是架构图?
系统架构图是为了抽象地表示软件系统的整体轮廓和各个组件之间的相互关系和约束边界,以及软件系统的物理部署和软件系统的演进方向的整体视图。
要让各部门的同事理解、遵循架构决策,就需要把架构信息传递出去,架构图就是一个很好的载体。一图胜千言,使用架构图的好处就是能解决沟通障碍,达成共识,让相关同事通过图一目了然领悟作图者的信息。
架构图是提升工作效率、优化产品性能、改善用户体验等方面的体现,也是作图者专业能力的表现。
二、为什么要画架构图?
我们画架构图需要好看、好懂、好用、好搞,因为好看是为了提升沟通效率,好懂是为了提升交流共识,好用是为了提升交付质量,好搞是为了提升实施速度。
三、架构图的分类
1. 业务架构
需求初期业务的结果和过程描述一般比较模糊,可能来自于某个老板、运营或用户的反馈。客户说海尔洗衣机洗土豆会堵,海尔立马设计专门的土豆洗衣机 业务方向往往是定方向和结果的叫战略,主要包括业务规划、业务模块和流程以及问题域的列表等。
2. 应用架构
服务复用、跨组协同,简单、灵活、整合是应用架构必须考虑的点,就像你要上线一个聊天功能,那么聊天内容的输入法、文字识别、舆情监控以及视频服务、支付服务等,它们都是在应用架构分层下沉淀到平台的产物,在供各个方使用。
3. 产品架构
业务提需求,产品定方案,相对于业务的粗放流程,产品架构会更加细腻以及考虑各个模块的分层和边界。
4. 数据架构
数据的获取、数据的存放和数据的使用是数据架构要解决的三个问题,数据库存放、大数据汇总、数据分析等。
5. 技术架构
是离程序员最近的架构设计,它不仅是系统搭建的架构图设计,还包括了结构、功能、流程、逻辑等内容。它的具体描述就是整个系统如何落地的具体实现方案。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
2023-05-13 大数据技术架构演进
2022-05-13 Web3.0 世界,元宇宙 NFT 与虚拟经济的未来
2021-05-13 一分钟理解CMMI1-5级的区别