细数软件架构中的解耦

微信扫一扫,分享到朋友圈

细数软件架构中的解耦

架构的定义

架构是软件方法学的范畴,它解决的是软件组织的问题,不解决软件算法的问题。两者的区别可用下图的积

木做个类比:

算法就像一个个的积木块,比如绿色的圆柱,蓝色的三角,红色的方块等。而架构则是把各种积木块,组装

成一个城堡,一辆小火车。为搭建这个城堡或小火车,架构师脑子里得有张图纸,图纸里既要定义需要哪些

形形色色的积木块,又要考虑如何将它们组装起来。这工作很像建筑师,英文也的确叫architect。

这样类比,很容易让不太理解技术的企业家们陷入误区,会觉得架构师要比算法工程师更厉害?其实不然,

这是两个细分领域的才能。不知道您注意到小火车车头上的烟囱没?它是一个像鸡腿菇一样的弧线造型,浇

灌出这种造型的模子,要比三角形和方块形要难很多,它需要更深奥的几何学的支撑,这可以形象的看做是

算法工程师解决的问题。

架构的意义

架构解决软件组织的问题,它能给企业创造什么价值?换句话说,好的软件组织,跟差的软件组织,从商业

价值创造的角度,有什么不同?笔者以为架构的价值体现在 可用性和敏捷性 两个角度,但今天要讲的是敏捷

性。 敏捷性指的是快速、低成本、高质量地应对扩张市场的差异化需求。 企业在初创期积累了不少软件资

微信扫一扫,分享到朋友圈

细数软件架构中的解耦

JT-day11

上一篇

[视频]三星未来派手机专利曝光:100%全面环绕屏 可滑盖拍照

下一篇

你也可能喜欢

细数软件架构中的解耦

长按储存图像,分享给朋友