C++是否是最难学的编程语言?
这个问题我不确定。很多人都感觉或者说听说C++是最难学的,但是有句老话说得好:难者不会,会者不难!这不,说C++是最难的编程语言,还是有许多的程序员学会了,而且鉴于这门语言的强大,学会的人薪资待遇还相当不错。
在我看来既然C/C++能够“长盛不衰”这么多年,足以说明它们的价值。单凭这一点就足够说明问题的了。
不过虽然我不是很专业,但是我也知道不用的领域会更多的应用不同的语言,尤其是题主还是自学,那么除非你的目的性很明确——比如从事某个岗位的职业,否则还是应该从比较容易上手的、应用比较普遍的语言入手比较好。所谓先上路,路上在慢慢想!
自学能学会吗?
能!
这个问题我能回答的原因是因为我家孩子9岁的时候开始学习的C/C++,我们学的比较慢一周也就是两次课(前大半年一周一次),纵然是如此,目前为止孩子基本上也已经把语法部分(即编程语言的本身)都学完了。只要不是算法太复杂的问题,孩子大都是可以做出来的。目前孩子正在开始学习各种算法。
我之所以说“能”是基于这近一年来孩子的表现以及二十年前我学C语言时候的一些经验总结出来的。
但是,我必须要说名两个问题:
1、能否学的好,完全取决于你的努力程度而不是“理论上的可能性”。
很简单的道理,当你看书学或者看视频学(网上资源跳多了)的时候,你仅仅是照着课程内容敲打一边代码就行了还是会做笔记、会找相关题目练习这两种学习的方式直接决定你后面的学习效果。就我孩子的学习情况来看,孩子的掌握程度基本上取决于投入练习的时间长短(当然,还有动脑程度)。
2、语言仅仅是一个工具。
编程语言仅仅是一个工具而已,当你工作时候更多的是要用这个工具去解决具体的问题。举个最最容易理解的例子:学习数学、物理的时候各种公式的本身并不难理解,但是当你应用的时候就会发现“我去!这题怎么做?”。同样的道理,语言你可以短时间内(两三个月足以达到入门级)学个七七八八,但是当你真的想用这个东西来解决问题的时候,往往会发现无从下手,甚至连点思路都木有!
因为我和孩子学习C/C++是因为我们想试试参加一下NOIP,所以我们的经验有限,但是这些道理也是很多老师、朋友跟我分享过的,我觉得是有道理的。比如我家孩子每节课听的都自认为没问题,但是一旦开始做题了,尤其是稍微复杂一些的问题时候,基本上就跪了!
朋友们跟我说解决这个问题没有什么捷径可以走,就是多练、多读(读程序)、多想、多交流!
可以从事哪些工作?
这个问题不难回答,但是我说不全,所以只能借助网络尽可能的把它主要能做的事情给你罗列一些:
C/C++主要用于操作系统软件底层开发比如开发操作系统,各种协议软件,硬件驱动,嵌入式,服务器,或者算法研究,游戏开发,还有各种图形处理,总之那里的性能需求和运行速度比较高的,那就用C/C++。可能这么说觉得太笼统了,我再直白点比如手机,飞机、动车、机器人、大数据、人工智能、仿真等等都能用的上!
临渊慕鱼,不如退而结网!无论你的规划、计划是如何,你都要先“出发”,只有在前进的路上你才会发现各种各样的问题,也才能更有针对性的解决。认真学、多练、多交流你一定行的。另外,你如果感觉自学C/C++语言有困难的话,我本身是一个C/C++出身的程序员,我整理了一些学习C语言与C++的学习相关的在扣裙,大家有兴趣可以一起来学习,C/C++编程学习,--先7841;后43133。
最后给你讲一个我觉得还不错的案例:我的一位超级远房的亲戚孩子,高中毕业啥也没考上,最后去了我们这里的一个还算老牌的计算机培训机构,学了2年多的编程,后来推荐工作之后认真努力的学、做,几年下来这孩子现在一年收入也是很不错的。当然,这种事儿不具有“普遍性”,是否“成才”很大程度上还是要取决于个人的努力情况。如果你有这个毅力,那么就去做吧!
文章取材于丨悟空问答:随便看看微笑不语