C++--第0课 - 学习C++的意义

第0课 - 学习C++的意义

1. C语言的特点

C语言是在实践的过程中逐步完善起来的。没有深思熟虑的过程,使用的时候有很多的灰色地带;残留了太多低级语言的特征,直接利用指针进行内存操作。C语言的目标是高效。

2. 软件方法论的发展

l  面向过程程序设计:数据结构 + 算法。

主要解决科学计算问题,用户需求简单而固定。

特点:

分析及决问题所需要的步骤。

利用函数实现各个步骤。

一次调用函数解决问题。

问题:

软件可重复性差。

软件可维护性差。

构建的软件无法满足用户需求。

l  面向对象程序设计:由现实世界建立软件模型。

将现实世界中的事物直接映射到程序中,可以直接满足用户需求。

特点:

直接分析用户需求中涉及的各个实体。

在代码中描述现实世界中的实体。

在代码中关联各个实体协同工作解决问题。

优势:

构建的软件能够适应用户需求的不断变化。

直接利用面向过程方法的优势而避开其劣势。

3. C语言的加强

当面向过程的方法论暴露出越来越多的缺陷的时候,业界开始考虑在工程项目中引入面向对象的设计方法,而第一个需要解决的问题就是:高效的面向对象语言,并且能够兼容已经存在的代码

C语言+面向对象的方法论演变为:C++和Objective-C。

C语言和C++并不是队里的竞争关系,C++是C语言的加强,

C++是以C语言为基础的,并且完全兼容C语言的特性。

 

4. 现代软件产品的架构图

商场收银系统

5. 现代软件产品的特性

(1)      系统一般是由多种软件构成。

(2)      系统构架的目标是拥抱用户需求的变化。

(3)      系统拥有较好的移植性。

(4)      系统能够方便的部署和更新。

l  操作系统的修改和驱动程序的开发在现代软件产品中占据的比重越来越小。

小结:

所有的软件系统的存在就是为了满足用户的需求。

对于一个开发团队而言,能再短期内开发出用户满意的软禁系统是其核心竞争力的体现。

对于一个开发中而言,能够胜任系统中任意一个模块的开发是其核心价值的的体现。

对于一个架构师而言,掌握各种语言的优势并且合理运用到系统中,由此简化系统的开发,是其架构生涯的第一步。

学习C++的意义:

C++是一种更强大的C,通过C++的学习能够掌握更多的软件设计方法。

C++/Java/C#/D等现代开发语言的基础,学习C++后能够快速掌握这些语言。

C++是各大知名软件企业挑选人才的标准之一。

猜你喜欢

转载自www.cnblogs.com/free-1122/p/11336140.html