课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
软件架构是软件开发程序员在学习编程开发技术的时候需要重点掌握的技术知识之一,而今天我们就一起来了解一下,软件架构的概念与影响因素都有哪些。
1、架构概述
架构概述,也叫:ArchitectureOverview。它是一个架构设计的大纲,也是核心。大多时候,架构概述是架构设计在客户的提案中集中体现。但架构概述并不是整个架构设计的全部,它可能是一个架构设计的开端,可能是一个架构设计的结尾,也可能是中间过程。架构师可以用他觉得合适的方式去画架构概述。同一个架构设计也可能有多种架构概述。但无论何种形式,架构师应该始终清楚架构概述的目标:它是一个大纲。所有人通过这个大纲,来连接在一起,共同实现系统。所以为了能让人更好的理解这个大纲。所以针对不同的背景的人,可以有不同的表达方式。故架构概述因人而异。但架构师需要把握整理,虽然不同的人看到的架构大纲不同,但他们的内在内核是同一个设计。
2、确定性的决策
其实在架构概述的时候,不管是显示的还是隐式,其实都包含了一个决策的过程。一般称之为架构决策(Architecturedecision)。实际上这个过程才是架构设计中能体现架构师功力的过程。我们说了架构设计千变万化,但内在是同一的。这个同一性,就是架构决策。所以的架构概述里面出现的元素,都要有理有据,有提问,有回答。图上的元素,为什么用这此元素而非彼元素。需要明确的决策。即使元素是开放式的。例如数据库连接形式,那么也需要给出确定性的范围:例如组件通过JDBC连接数据库,连接数量不能多于10个。这个过程比较复杂,咱们这次不关注如何决策,而是关注确定性。经过这个过程之后,架构概述才是一个真正能站得住的架构概述。当架构师站在台前向客户演示的时候,才能扛得住客户暴风骤雨般的提问。实际上架构设计可能不是一个人设计的。这个过程会参与很多人。大家一条一条过,每个细节可能都千锤百炼。所以有经验的架构师一眼就能分辨出来,这个架构概述是copy别人的,还是自己做出来的。至少架构决策在架构概述上,可以初见端倪。
3、新的开始
架构设计到此其实并未结束。架构概述之所以称之为概述。主要还是因为架构总是只是一个大纲,一开始并不精确。在整个架构设计过程内,架构概述需要反复迭代锤炼,精益求精。这个过程做完,再往下一步的时候,又会发现新的问题,这时候回来继续锤炼,反复迭代,直到架构是可落地的,严丝合缝的。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请在707945861群中学习了解。