精准传达 · 有效沟通
创造有活力的品牌网站 提升用户体验和品牌价值感

软件开发与楼房建设

来源:重庆建站 快网科技 | 2019-03-22

作为一码农,每当经过一处建筑的楼房框架时,总感觉,这块,或多或少跟软件开发还是有些类似之处的,虽然本身对软件架构了解不多。
起初,在遵循各自的设计原则和目标下,软件或建筑工程师都需要提供一整套设计图,对整体的需求有一定的认识把握。
然后,由软件架构师搭建一个整体框架。好的架构师能够很好的把握软件的长久使用,良好的可扩展性及可维护性,而且非常安全可靠。同样,楼房建筑中,需要用钢筋混凝土做出一个建筑的框架,这个框架没有墙,只有柱和梁,柱和梁起到承重的作用。
其次,软件的架构搭起来之后,在其基础上添加各种需求功能,充分地集成,强化功能,优化体验,来满足不同的用户。而房屋框架是一个整体承重骨架,搭好了这个框架,然后一层一层的盖起来,从第一层到第二层……直到封顶。从下到上,先基础,然后主体,之后客户可根据个人风格进行某间楼房的装饰及安装过程。
当然,楼房一旦开建,地基都打好了,就不能轻易改变尺寸或现场位置。
而对于软件来说,我们几乎可以做想要的任何改动,简单也好,复杂也罢。哪怕是改变产品方向,或者是换一种编程语言,所有这些变动比从头再来的成本要小得多!
可见,软件上有极大的灵活性,能够在开发的全过程中随时接受需求的变更。
之外,在建筑的世界里,设计师把一套设计图交给建筑工人的时候,还能有相当的信心他们可以正确理解。尽管还是会有一些关于变动的需求和沟通,但变动的程度不可与软件同日而语。
而软件世界里,虽然有了设计图,仍需要在客户和软件开发者之间持续不断地进行一系列的交谈。
多年以来,软件行业一直在使用一种类比,以建筑行业来做参考和比喻。虽有些理念有相似之处,但从根本上来说是不恰当的。