《架构漫谈》是由资深架构师王概凯执笔的系列专栏,专栏以王概凯的架构经验为基础,逐步与我们讨论了什么是架构、怎样做好架构、软件架构如何落地、如何写好程序等问题。
全系列共有九部分:
(1)什么是架构:
首先把架构的概念讨论明白,然后在对架构进行分析才显得清晰有意义。架构是人类发展过程中,由被动地去认识这个世界,变成主动的去认识,并以更高的效率去改造这个世界的方法。由不同角色来完成这些分工,并通过建立不同部分相互沟通的机制,使得这些部分能够有机的结合为一个整体,并完成这个整体所需要的所有活动,就是架构。一切都是为了满足人的越来越高的需求,提升质量,减少时间,提高效率,并且让代码之间更加有机的进行沟通。
架构这个词在软件工程很早之前就已经出现了,在人类的早起大家的衣食住行都靠自己,不需要合作,这时候自然不需要架构。但是经过一段发展,人类发现合作的力量是巨大的,每个人都有自己所擅长的部分,在进行分工合作的时候产生的结果往往大于个人,这时候就产生了社会的架构。
从中可以看出架构产生的动力有五个:
1、由人执行;
2、每个人能力有限;
3、每个人时间有限;
4、目标期望高;
5、目标复杂。
对于架构的理解,大致总结如下:
1、根据要解决的问题,对目标系统的边界进行界定。
2、对目标系统按某个原则的进行切分,切分的原则,要便于不同的角色,对切分出来的部分,并行或串行开展工作,一般并行才能减少时间。
3、对这些切分出来的部分,设立沟通机制。
4、使得这些部分之间能够进行有机的联系,合并组装成为一个整体,完成目标系统的所有工作。
而架构的产出物,自然就是对问题的分析,以及解决问题的方案:包括拆分的原则以及理由,沟通合并的原则以及理由&