作者:禅与计算机程序设计艺术
1.简介
在软件开发中,优秀的实践经验、软件工程工具和方法论对软件开发过程中的效率、质量、成本控制等方面有着巨大的影响。能够有效提高软件开发效率、降低成本、提升产品质量和可靠性是每一个软件开发人员的责任和义务。因此,作为一个开发者,不仅要掌握软件开发过程中涉及到的知识技能,更要有能力把这些知识应用到实际工作中去,成为一个良好的工程师。本文将从工程视角出发,通过一系列实用案例介绍最佳工程实践和软件架构设计模式,帮助软件开发人员快速上手并进一步提升自我能力。
2.基本概念与术语
2.1 软件工程概述
软件工程(英语:Software engineering)是指应用计算机科学、管理科学、经济学、社会学等多个领域的跨学科研究,用于开发、维护和改善软件。其目的是为了开发一系列的工程化的解决方案,以满足用户的需求、提高软件的可靠性、可用性、效率、质量、健壮性和安全性。
2.2 软件工程相关术语
以下是软件工程常用的术语。
2.2.1 模型
模型(Modeling):模型是指某种系统或过程的抽象化表示。软件工程的模型通常包括静态模型、动态模型、数据模型、行为模型、流程模型等。
2.2.2 原型
原型(Prototype):原型是一个早期版本的软件系统,它用于验证产品的概念是否符合用户的要求,或者用于收集用户反馈意见。原型可以是一个“石板”(