1. 鸟瞰软件工程

鸟瞰软件工程

我的工作生涯中遇到过很多知道如何编码的人,从菜鸟到大佬。这些人的工作背景不同,有的在创业公司待过,也有的在大厂待过。教育背景也不同,从cs专业毕业的,到跨专业的。形形色色,五花八门。

如果无视这些差异,他们有个共同点,那就是他们都管自己的职业叫软件工程师(software engineer),尤其是简历中,而且避免叫程序员(software developer)。网上找些JD,从中也可以看出企业更愿意寻找软件工程师。但实际上,软件工程师这个概念,太宽泛了。随着工种的熟悉程度和级别的不同,会细分为比如系统设计(system design)、测试质保(testing)、效能(build tools)、运营管理(operations management,可能是cms之类的)。

那么到底啥是软件工程,它和软件编码有什么区别?带着下面的几个问题来看本章内容:

· 软件工程的定义

· 在当下企业中,软件工程的细分角色有哪些

· 软件工程模式摘要,看看有哪些流行的模型

什么是软件工程?

我们先统一些软件工程的术语,免得跟软件开发(software development and programming)混淆。先看下IEEE(IEEE's Standard Glossary of Software Engineering Terminology)如何定义软件工程的:

『Software engineering is defined as the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software.』

『软件工程是一种方法(approach,方法论?),这种方法是系统性的、有严格规则的,并且可量化的,这种方法用于指导软件的开发、软件的运营和软件的维护。』

第一印象可以得知,编码或者开发,只是软件工程的一部分。

你可能感兴趣的:(go设计模式,html5,javascript,html)