对于初学C++的人来说,你觉得从入门到精通需要多长时间?应该怎么学?
作为已经搞了十几年代码的老司机,对于这种动不动就喊着精通某种语言的初学者有点无奈,现在很多刚毕业或者毕业没有几年的程序员喊着精通几种编程语言,而且这种基本上在面试上遇到老程序员都会遭到技术细节的洗礼,反而越是干的时间越长的程序员越是在介绍自己的时候都是写上熟练某种语言,c++作为一种几乎公认的最难的编程语言,也是一门够得上学一辈子的编程语言,现在很多编程书籍的名字起的也是让人觉得很无语,21天精通某某语言等等也是助长了浮躁之风。
为什么这么多人觉得C++难学,而且现在很多大学开设的第一门编程语言就是C++,上来就让啃最难的骨头,而且要问到多长时间能够到精通?让这些做了十几年的c++程序员情何以堪,为什么c++被认为成很难的编程语言?
1.基础语法相当繁杂,而且还在不停的更新
c++的设计理念是尽量在编译的时候通过个各种规则达到一种效果,所以很多初学者在编译的时候就能折腾很长时间,特别是泛型编程里面的各种设计模式,细节多如牛毛。由于这种设计的理念,导致很多编程大神炮轰这种理念,觉得是一门把人带沟里的编程语言,现在学校开设的c++课程主要在讲述面向对象的设计理念,基本上很少涉及到泛型编程,所以很多人觉得c++没有那么难,因为只是讲述了面向对象的理念是个什么样子,对于真正实战类型的接触的比较少,很多进入工作岗位才发现原来这东西这么难,还能这么玩,关键这还不是全部还在不停的更新,一旦踏进去想玩彻底基本很难,正因为骨头硬所以很多架构师倒是非常喜欢琢磨这门编程语言,觉得特别有味道。
2.靠近底层可以直接对底层语言,特别是指针操作
如果要找出一种编程语言既能直接操控硬件又能带有面向对象的编程思想,也只有c++了,正是因为这个特性,很多对性能要求比较大的框架都在c++的基础上进行构建,这也就是为什么很多架构师喜欢琢磨c++,根本原因还是刚需。操空底层的编程语言就会涉及到指针的操作,指针问题对于初学者来讲简直的一个噩梦,本质上不难主要计算机相关基础知识不到位的情况下,去学习理解起来就费劲很多。
很多人初学者从开源社区拿到c++写的代码源码,开始基本上看不懂,因为里面涉及到很多语法细节不说,关键还有各种编程模式,加上泛型编程里面语法,要真要能看明白代码如何实现基本上对于c++已经有了大概的认识,距离自己真实写代码已经非常接近了。
难于不难,主要是客观上评价,关键看主观上如何去对待,真正进入状态学习了,也不会去想精通不精通这码事情了,做编程有一种感觉叫水到渠成,开始觉得自己写不了代码到了一定时间自然就会写了,都是坚持学习的结果。
原文发布时间为:2018-09-28
本文作者:东辉在线
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
一个阿里工作4年java程序员的从业心得,写给还在迷茫的朋友
貌似这一点适应的行业最广,但是我可以很肯定的说:当你从事Java一年后,重新找工作时,才会真实的感受到这句话。 工作第一年,往往是什么都充满新鲜感,什么都学习,冲劲十足的一年;WEB行业知识更新特别快,今天一个框架的新版本,明天又是另一个新框架,有时往往根据项目的需要来不断学习新东西;所有,很多时候感觉,自己用过的东西真多呀!但是真正深入研究的东西却不多。面试,是跳槽后第一个需要面对的问题;而且不同公司面试的着重点不同;但是却有一个共同点:Java基础是必考的。 工作第一年,可能问你String对象创建的理解,常用的框架是什么等等; 工作第三年,就问你Java内存分配机制是什么,类是如何加载的等等; 工作第五年,就问你常用的设计模式是什么,你在工作中充当什么角色,怎么独立完成一个模块等等; 可以看出——这是一个典型的程序员的成长过程: 使用Java—->深入理解Java积累经验——>独立设计分析能力——>独当一面的多面手! 因此,必须学习: 数据库 最常用的是Oracle了(当然银行项目等需要DB2等),熟练掌握使用存储过程,触发器等; UML 项目中经常要写文档,项...
- 下一篇
AI时代,FPGA芯片发展潜力巨大?
随着芯片制造技术难以持续缩进,多核CPU性能的提高难度越来越大。 虽然目前CPU的性能获得了巨大的进步,但主要用于扩展CPU的性能吞吐量,而不是单个CPU内核的个体性能。(我们知道架构增强是有难度的)。但是FPGA和GPU加速器的每瓦性能都有了令人信服的改进。近两年来,越来越多以FPGA切入AI芯片的玩家涌现出来,包括国内AI芯片创企深鉴科技、百度XPU、微软Project Brainwave、深思考医疗影像专用AI芯片等等。尽管ASIC在性能功耗上往往有更好的表现,不过我们发现,在一片红海的AI芯片市场中,FPGA凭借自己独特的优势占有了一席之地。甚至有媒体报道称,FPGA是AI芯片的终极未来。 那么FPGA为何能在AI数据中心时代杀出重围呢?究其原因,无外乎兼容性、可定制、功耗、性价比。熟悉FPGA的人并不少,其全称为Field-Programmable GateArra,即现场可编程门阵列,以硬件描述语言(Verilog或VHDL)完成的电路设计,特点是可以排列组合出各种复杂的逻辑功能,即使在出厂成品后也能根据设计需要改变逻辑模块和连接。并行计算时,FPGA包含的LUTs、reg...
相关文章
文章评论
共有0条评论来说两句吧...