绿财神报网址 他没有想太久

  c?我不是一个工程师 – 我是一个软件开发者_知识库_博客园
本文是从 I am not an engineer - I’m a software developer 这篇文章翻译而来。  在《Object-Oriented Software Development Using Java》这本书的导言部分,第8-9页上的“软件开发过程是工程化的过程吗?”一节中,Xiaoping Jia写道:…对于“软件工程”这个词的精确定义仍旧没有多少共识,就连使用“软件工程师”作为一个专业职称的正当性也受到质疑…工程(engineering)和工艺(craftsmanship)之间的一个关键区别就是,工程的成功可以通过事前对设计的科学分析而得到保证,而工艺的成功却是通过当前的和之前的制作上的试验和失误获得的…在某些非常成熟的工程化领域里,失败、有时甚至是灾难难以杜绝…但相同的失败却很少会重复发生…而对于软件开发,相同类型的失败比比皆是。成熟的工程化领域里的成功很大的原因在于对知识的规范和积累,重复利用以前的解决方案…对于软件开发,尽管有积存的大量的体会和设计技术,却很少有被系统化的整理过的…所以,软件开发是一项跟传统的工程方法有很大的不同的活动。充其量也只是一个不成熟的工程学科。软件开发如果想成为真正的工程方法,软件开发人员必须要机械的去执行设计分析,确保已知的失误不会重现,把设计知识系统化。  我不是一个工程师。我是一个软件开发者,118论坛。在跟一个是工程师的朋友交谈中,我问他觉得我和他的工程作业上最大的不同是什么。他没有想太久。“我的产品都是大规模生产的。”  我是一个软件开发者。在我的想象里,就像Jia指出的,我们更接近是手艺人,而不是工程师。但我所说的“手艺&rdquo,精准一肖两码免费公开;跟Jia说的有很大的不同,我所指的不仅仅是开发过程和工程过程之间的交集,更指的是让软件成为工艺品的工艺流程方法。  我既不是一个运算机科学家,也不是一个业余人士,既不是一个专家,也不是一个新手。我处在中间,我靠写代码为生。