软件工程是不是教不会写程序的人开发软件?
这是软件工程课的老师给我们布置的一道思考题。在应试教育体系学习了这么久,一般遇到这种问这么绝对的问题,下意识的反映就是不对或者不完全对。
我觉得,对很多人应该很大程度是。
首先,软件工程是一门研究用工程化的方法构建和维护有效的,实用性和高质量的软件的学科。它涉及程序设计语言,数据库,软件开发工具,系统平台,标准,设计模式等方面。总的来说就是软件工程提供了一种科学的,有效的开发思想,在我们的思想里构建了一个软件开发的具体模型,或者说软件开发的各个阶段的标准。可以很有效的减少我们开发软件的很多误区。这也就是为什么说它很大程度是教不会写程序的人开发软件的。
但是,它的也不完全是。如何开发一个软件,需要的更多是自己的努力和思考,在课堂学习的只是其实很难支持我们开发一个质量不错的软件。且我觉得开发软件是特别讲究团队合作的,团队里有的人也并不需要会写程序或者说会敲代码。
有人说,世界上有 10 种程序员。一种是遵守软件工程开发规则的,我们称之为工程师;一种是不遵守软件工程开发规则的,我们称之为码农。