【C++深度剖析学习总结】 1 学习C++的准备
C++深度剖析教程1 --- 开始学习C++的准备
作者 CodeAllen ,转载请注明出处
C++的一些发展历史
1.Unix诞生之初是使用汇编语言编写的
2.随着Unix发展,汇编开发成为一个瓶颈
3.1971年,ken Thompson和Dennis ritchie对C语言进行了改良,使其能够直接产生机器码,成员诞生了
4.Unix系统开始使用C语言重新编写,同时C语言在实践的过程中得以发展
对比C语言的特点(学习技术的一个有效方法就是对比学习)
1.C语言是在实践的过程中逐渐完善起来的
---没有深思熟虑的设计过程
---残留过多低级语言的特征
2.C语言的目标是高效
---最终程序执行效率的高效 --- 可以通过某个地址的直接跳转到响应的值去执行
软件方法论的发展
1.面向过程的程序设计:数据结构+算法
---主要是解决科学计算问题,用户的需求相对简单而固定
---特点:
分析解决问题所需的步骤
利用函数实现各个步骤
依次调用函数解决问题
---问题:
软件的可重用性差
软件的可维护性差 ---为了解决bug会引入更多bug
2.面向对象的程序设计:由现实世界建立的软件模型
---将现实中的事物直接映射到程序中,可直接满足用户的需求
---特点
直接分析用户的需求中涉及的各个实体
在代码中描述现实世界中的实体
在代码中关联各个实体协同工作解决问题
---优势
构建的软件能够适应用户需求的不断变化
直接利用面向对象过程方法的优势而避开其劣势
C语言的加强
1.当面向过程方法论暴露暴露越来越多的缺陷的时候,业界开始考虑在工程项目中引入面向对象的设计方法。而第一个需要解决的问题就是,高效的面向对象语言,并且能够兼容已经存在的代码。
用c语言写一个类。但是真的累。
2.C语言与c++并不是竞争的关系
3.c++是以C语言的加强,是一门更好的C语言
4.c++是以C语言为基础的,并且完全兼容C语言的特性
注意:学习c++并不会影响原有的c语言知识,相反,学习c++可以让我们学到更多的软件设计方法。
学习c++的优势
现代软件工作内容:
商城收银系统架构图
想想为什么用这么多语言?
因为要发挥各种语言的长处,比如使用脚本的原因,想想过节时的各种活动,经常重写打包,这个时候更新模块就很重要了,脚本可以快速更新。
现在软件产品的特性
---系统一般是由多种语言写成的。
---系统架构的目标是拥抱用户需求的变化
---系统拥有较好的移植性
---系统能够方便地部署和更新
操作系统的修改和驱动程序的开发在现代软件产品中占据的比重越来越小。
学习c++的意义
---c++是一种更强大的c语言,通过学习c++就要能够掌握更多的软件方法。
---c++是Java/c#/D等现代开发语言的基础,学习c++后能够快速掌握这些语言。
---c++是各大知名软件企业挑选人才的标准之一
文章来源: allen5g.blog.csdn.net,作者:CodeAllen的博客,版权归原作者所有,如需转载,请联系作者。
原文链接:allen5g.blog.csdn.net/article/details/81270981
- 点赞
- 收藏
- 关注作者
评论(0)