学习C++的意义

版权声明:未经允许请勿转载,转载请注明出处! https://blog.csdn.net/lms1008611/article/details/79949058

--事物的难度远远低于对事物的恐惧!

    前些天更新了几篇《C进阶养成记》,今天开始不定期的交互更新各个教程。

    首先来一篇C++的开门红:学习C++的意义!

        至于为什么要学习C++,本菜不想卷入各大派别的纷争,只是简单地来聊聊学对于C++的看法,首先来看看2017年3月份计算机语言的排行榜,可以看到C++在前三占有一席,如果心细的朋友会发现,C/C++语言这几年,基本都会位列前三,而且各大企业的招聘需求,基本都会要求熟练使用C++,这个随便查查招聘网站就知道了。业内广为流传的一句话说的好:"汇编生C,C生C++,C++生万物"!

        现在来聊聊软件开发的古今,很久之前,工程师都是用汇编语言去开发项目,那个时候的软件产品相对于现在的产品来说,功能结构等会比当今的软件产品要单一的多,但是随着技术的革新,人们对生活的追求不断发展(咳咳,扯远了。。),用户对产品的需求,也变得越来越多元化,而不单单是功能的实现,那么,这样就会导致代码量越来越大,而使用汇编语言,无论是开发还是后期维护,难度都会越来越大,于是慢慢的慢慢的,C语言就诞生了(也可以说是被迫诞生的吧,哈哈哈),可想而知,C语言诞生到成熟的过程,是不断实践改进的过程,所以多少会有些残缺,相信很多C开发者踩过不少C语言的坑!

    那么C语言在开发中存在哪些缺陷?我们知道C语言是面向过程的语言,这就确定了用C语言解决问题是按步骤来的,具体来说就是各个处理问题的步骤封装成函数,然后调用函数去解决问题。那么这样就导致了C开发的软件代码,可重用性与可维护性比较差。

    艺术来源于生活,同样,程序设计也会朝着我们的生活的方向而慢慢演变,会变得更加贴近人生活习性,这就促使面向对象编程语言的诞生,面向对象程序设计的特点很明显:

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

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

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

    优势相对于面向过程的设计方法,也很明显:

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

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

既然面向对象的程序设计方法能如此优美的解决面向过程的缺陷,那么就急需要开发一门面向对象的编程语言,这门新的面向对象又要能同时兼容已经存在的代码,如此一来,C++应运而生!C++的诞生是为了解决C语言的缺陷,同时兼容C语言,可以说是加强版的C语言,所以,C++与C并不存在竞争关系,反而在弥补C语言的不足并兼容C语言之外,还能是我们的开发工作变得很愉快,同时能学到更多的软件设计方法,何乐而不为!

        从上图,你应该能体会到"汇编生C,C生C++,C++生万物"这句话所表达的意思了吧!没错,我们所熟知的java、C#等热门编程语言,本质上来说,可以归为"类C++语言",都是基于C++语言的基础上提炼出更简洁、更纯粹的面向对象编程语言。

让我们来看一张现代软件产品的架构图:

        

总结:

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

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

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

相信说道这里,你已经明白学习C++的意义了!

下个章节开始正式进入C++的世界。。。

阅读更多

没有更多推荐了,返回首页