疑问or感兴趣的点

什么是软件设计?

(了解基本的信息,加深对该方面的印象)

 

软件设计是软件需求与实现代码之间的桥梁,起着承上启下的作用。

对上而言,软件设计为软件需求的实现提供了一种抽象的解决方案规划。虽然还没有具体实现,但是软件设计明确了软件需求中所定义的功能如何分配到不同的软件单元(例如组件,模块,文件或类)上,同时非功能性的质量需求(例如可扩展性,性能、可靠性等)以何种方式实现。

对下而言,软件设计明确了每一个软件单元的开发要求(例如接口定义、功能要求等),使得它们可以以一种分而治之的方式分别被实现(有时候还可以分配给不同的开发小组和开发人员来分别实现)。

 

软件设计的思想有什么?

(利用主要的思想完成设计)

  1. 分解与抽象
  2. 软件体系结构
  3. 关注点分离
  4. 模块化
  5. 信息隐藏
  6. 重构
  7. 复用

 

软件复用的概念和意义?

(类似Copy,进一步了解具体的定义,以及该方法的价值)

在1968年的NATO(北大西洋公约组织)软件工程会议上,Mcllroy等在论文 Mass-Produced Software Com bonents ( McIlrov et al. ,1968)中第一次提出了“软件复用”的概念。软件复用意味着重复利用已有的知识经验或软件制品来开发新的软件产品,这种建立在已有基础之上的软件开发方式能够有兴提高开发效率你低开发成木、提高软件质量,并且缩短产品发布周期。

 

软件复用所带来的价值已经得到了软件企业和开发人员的广泛认同和接受,并带来了以下两个方面的变化。

首先,软件复用有力推动了通用软件资产的沉淀。

其次,软件复用极大促进了软件行业的分工。

当前,各种形式的软件复用已经成为软件开发的重要支撑手段。通过复用方式获得的软件组件和其他软件制品在软件项目中已经占据了相当的比重。

 

什么是面向对象设计?

(在学习C++、Java的时候引入的概念,想要进一步理解含义)

 

面向对象程序设计(Object Oriented Programming)是一种计算机编程架构,作为一种新方法,其本质是以建立模型体现出来的抽象思维过程和面向对象的方法。

模型是用来反映现实世界中事物特征的。任何一个模型都不可能反映客观事物的一切具体特征,只能对事物特征和变化规律的一种抽象,且在它所涉及的范围内更普遍、更集中、更深刻地描述客体的特征。通过建立模型而达到的抽象是人们对客体认识的深化。

OOP达到了软件工程的三个主要目标:重用性、灵活性和扩展性。OOP=对象+类+继承+多态+消息,其中核心概念是类和对象。

 

posted @ 2023-03-05 15:04  Road2Coding  阅读(11)  评论(0编辑  收藏  举报