学习C++的意义
导读: 声明:本专栏所有文章是学习狄泰软件学院的C++课程的笔记一、常见观点1、 操作系统和驱动程序都是C写的,学好C就足够;2、 C++在应用层用得比较多,学嵌入式没有必要学C++;3、 以后
丝瓜网小编提示,记得把"学习C++的意义"分享给大家!
声明:本专栏所有文章是学习狄泰软件学院的C++课程的笔记一、常见观点
1、 操作系统和驱动程序都是C写的,学好C就足够;
2、 C++在应用层用得比较多,学嵌入式没有必要学C++;
3、 以后做驱动开发没有必要花精力去学C++;
4、 Linus大神认为C++一无是处,还学它干嘛?二、历史
1、UINX操作系统诞生之初是直接用汇编语言写成的;
2、随着UINX的发展,汇编语言的开发效率成为一个瓶颈;
3、1971年,Ken Thompson和Dennis Ritchie对B语言进行改良,使其能够直接产生机器码,C语言诞生;
4、UNIX开始用C语言重写,同时C语言在实践过程得到发展 。三、C语言特点
由于C语言是在实践过程逐步完善,所以C语言没有深思熟虑的过程。C语言残留了过程低级语言的特征,例如可以通过指针直接操作内存,可以通过变量值直接跳转到某个内存执行;这样带来的好处就是通过C语言开发的最终可执行程序是非常 高效的。四、软件方法论的发展
1、面向过程程序设计:数据结构+算法
面向过程程序设计主要用于解决科学计算问题,用户需求简单而固定。面向过程程序设计特点如下:
(1)分析解决问题所需的步骤
(2)利用函数实现各个步骤
(3)依次调用函数解决问题
面向过程程序设计的问题有:软件可重用性差和软件可维护性差
2、面向对象程序设计
面向对象程序设计由现实世界建立软件模型,将现实中的事物直接映射到程序中,可直接满足用户需求。面向对象程序设计的特点如下:
(1) 直接分析用户需求中涉及的各个实体
(2) 在代码中描述现实世界中的实体
(3) 在代码中关联各个实体协同工作解决问题