所谓工程就是应用有关的科学知识和技术手段通过有组织的群体协作活动建造具有预期使用价值的人造产品的过程。
高楼大厦、轮船、飞机建造,工程活动一般都具有以下特钟:
工程是将理论和知识应用于实践的科学,以便经济有效地解决问题
创造”足够好“的软件
足够好的软件是什么?
代码封装从函数到类再到构件,再到应用层级上的服务
工欲善其事必先利其器,软件工程也不例外
将已有的软件制品,直接组装或者合理修改形成新的软件系统,从而提升开发效率和产品质量,降低维护成本
软件复用不仅仅是代码复用
软件工程是一项解决问题的工程活动,通过对问题的研究分析,将一个复杂问题分解成可以理解并能够处理的若干小问题,然后逐个解决
软件工程师,应当把优化当成一种责任,不断改进和提升软件质量;但是优化是一个多目标的最有决策,在不可能使所有目标都得到优化时,需要进行折中实现整体最优