钟离昧的一梭子架构师之旅
从事java开发行业三年有余。做过的项目类型有 金融、电商、食品安全、企业培训、医疗等行业。在此期间 也搭建过框架。不管是单体架构还是微服务架构。这正是成为架构师的一环。
架构和架构师有什么区别?
做项目当中所搭建的架构和架构师搭建的架构实质上没有什么区别。同样是架构。他没唯一不同的区别就是:架构师从全局出发,然而普通的架构就是从需求出发,没有架构文档。
你可能会说:全局我也考虑到了,(来吧直接开喷)
前提:
就好比 训练营中的第一个作业。
食堂就餐卡系统设计
系统中每个消费者都有一张卡,在管理中心注册缴费,卡内记着消费者的身份、余额。
使用时将卡插入收款机则显示卡上金额,服务员按收款机上数字键,收款机自动计算并显示消费额及余额。
管理中心的管理员监视每一笔消费,可打印出消费情况的相关统计数据。
A
目前的我作为一个有工作经验的开发人员,可以预估出 用户量有多大,并发有多大。简而言之 ,一个大学也就几万人(活跃用户),消费卡也就食堂、热水等需要(并发也就1000的样子)高峰期也就早中晚。
作为一个软件公司。可能服务的不只是一所学校涉及到多所。
没有参加训练营的时候:OK这个项目想了一下,简单的springboot 带不动,那就来微服务吧。
现在,想了一下 DDD 、寻找了几个开源组件、拆解了一下模块。拿着键盘一梭子 扒拉扒拉几天时间项目的架构已经搭建完成了。这也是没问题的。
拿着成果去给老板邀功。
本项目采用的是 XXX微服务,分解成为XXX个模块。每个模块需要天成XXX功能。所有前期工作已准备好。就等着填代码了。你能和老板说的也只有这些。老板也听不懂技术啊。
给相关开发人员讲。框架是什么、怎么写、XXX功能 需要写在那个模块。需要注意什么。你们看一下框架。现在分配一下任务 。XXX做什么XXX模块 ....... ,我就负责XXX模块。
这不是瞎说的。这也是我的一部分经历。这也是架构啊 为何不是。现在我还是只能说我是一个码农。
B
好了 ,现在有搭建架构的能力 有一定的经验 。 去面试了一个初级架构师的职位。
运气好面试上了 ,入职了。老板说你先了解一下公司的情况,接着说:你在XX周后拿出一个设计方案。指定了几个相关人员给你。这怎么玩?跑路、试一下。关键是不知道这怎么写啊。
现在去谷歌了一下架构文档该怎么写。
架构文档参考链接
https://www.ibm.com/developerworks/cn/architecture/ar-archdoc1/index.html
https://blog.csdn.net/woshiyeguiren/article/details/80345925
扒拉扒拉加班写 ,写完了,去邀功。老板听你讲了两个小时。自己讲的很完美。老板听得一脸懵逼。他也不懂
C
参加训练营之后第一堂课就是讲的架构师,架构设计文档。
如果不听这堂课。我还真的不知道架构文档不知道怎么写。架构文档需要给给谁看、写什么东西。
D
其余的总结其他同学些的很好了。我就不在描述了
主要强调就是:相关方,你的架构文档给谁看。相关方不同,文档不同。虽然现在有这个想法。如果没有前人的指导,还真的不知道。
其次架构文档 是真的真的很重要,前期也是真的真的难写、难画、我都不知道我现在画的啥。画的对不对。
这篇文档也不错:
https://app.gitbook.cn/page/chat/5e9850bd6e10e519aa2334c0
最最最后
架构图:如何画、怎么画。画的正确不。画飘了不。这真的多画才知道。
不会写架构文档的架构师不是好架构师。
如果你公司也有架构师,你去问一下架构设计文档给我看一下嘛。我想学架构了。看看是个啥样的。
最会一个问题:
类与类之间有什么关系。类图呢?这是个啥。类图之间的关系能衍生出来什么关系。
思考完再看:https://zh.wikipedia.org/wiki/%E9%A1%9E%E5%88%A5%E5%9C%96
版权声明: 本文为 InfoQ 作者【X中倪】的原创文章。
原文链接:【http://xie.infoq.cn/article/6322f005d9673411fc2597de0】。文章转载请联系作者。
评论 (1 条评论)