总会时不时的怀疑自己是不是学编程的料,还是自己太笨?
自己读研前对编程可以说是一窍不通,虽然本科时学过C,但那时也只是应付考试,没学到什么真才实学。
幸好读研后,自己开始猛的补各种知识,开始从头学C,慢慢的学的有点起色,心里有点小得瑟。自以为学的还可以,就去POJ做题,纯属找虐,信心一下子又重新跌倒谷底。
之后又再好好研究C,学一些普遍的算法,真正的开始有起色。就试着写写贪吃蛇,五子棋之类的小游戏,虽然写的过程也是百转千回各种纠结,但最后写成后内心还是挺温暖,觉得编程门终于向我开放了。
之后又开始自己装linux,学写linux下的一些常用指令以及一些编程,虽然不懂的很多,但遇到问题问度娘,度娘神通广大啊,让我积累的东西越来越多,慢慢的对linux下的编程有了一些了解。虽然还只是菜鸟,但坚持下去,谁能保证菜鸟就不会有春天?
之后开始学C++,看的是钱能的《C++程序设计教程》,刚开始里面的继承,多态,特别是虚函数和运算法重载部分,确实让我狠狠的难倒了一回。看不懂能怎 么办?我采用了最笨的办法,多看几遍呗,就是死磕。最后好像间间断断的把这本书看了至少3遍,算是对C++的语法有了一定的认识,虽然用着C++形式写着 C的代码,但还是心里还是挺洋溢的。虽然看了几遍,但还是有些概念不是太清晰,不是太会运用。无意中翻了一本Java的书,其实大家都知道,Java跟 C++还是有挺多相似之处的,竟然对Java产生了很大的兴趣,去图书馆借了本Java的书,记得用了一个星期就把Java的语法部分全看了一遍,而且看 的过程中竟然加深了我对C++很多知识的理解。不过还是对C/C++情有独钟,之后还是坚持学C++。开始看《C++ Primer》,这才发现国内的教材确实没法跟国外的教材比,这本书确实是本难得的经典书目,国内的教程对很多东西都只是浅尝辄止,概念的解释也是不太清 楚,根本无法让自学者体会到C++这本编程语言的精髓以及与C的区别。那时真像一个饥饿的人趴在了一块面包上,开始废寝忘食的拜读这本被誉为“圣经”的经 典书籍,开始学习STL,这时才真正体会到C++的魅力,以及与C的区别。以前一直听别人说C++非常难学,自己也觉得C++确实挺难学,但看了一部分 《C++ Primer》后,觉得情况可能真不是我之前想的那样,觉得C++虽然需要理解的东西确实比C要多,但学到一定程度后,C++真的将程序员们从C的禁锢中 解脱出来,才发现C++是多么的好用。到底C++有多好?这个问题很多大神们都讨论过,我这菜鸟就不好多说了。
之后开始学数据结构,现在也一直在学,真的挺麻烦的,什么栈,什么树啊,图啊的,确实挺让人恶心的。自己开始写栈的实现,看严蔚敏的数据结构书时把栈介绍 的那么难,刚开始都看懵了。能怎么办?老办法,死磕呗。多看几遍,自己试着写出栈的实现,不断写,不断的出错,出错后再写,再出错,再写,最后应了一句古 话---皇天不负有心人。觉得数据结构也好,算法也好,或者其他没学过的东西也好,刚开始看都挺懵的,觉得怎么这么难啊,太难了,自己能不能解决啊?最后 弄清楚后才发现,其实啊,什么难不难的,也就那么回事。死磕呗!
虽然最近学习遇到很多问题,确实挺头疼的。能怎么办?死磕呗。
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
以下为大牛的学习建议:
C++学习建议
C++缺点之一,是相对许多语言复杂,而且难学难精。许多人说学习C语言只需一本K&R《C程序设计语言》即可,但C++书籍却是多不胜数。我是从C进入C++,皆是靠阅读自学。在此分享一点学习心得。个人认为,学习C++可分为4个层次:
- 第一层次,C++基础:挑选一本入门书籍,如《C++ Primer》、《C++大学教程》、或Stroustrup撰写的经典《C++程序设计语言》或他一年半前的新作《C++程序设计原理与实践》,而一般C++课程也止于此,另外《C++ 标准程序库》及《The C++ Standard Library Extensions》可供参考;
- 第二层次,正确高效地使用C++:此层次开始必须自修,阅读过《(More)Effective C++》、《(More)Exceptional C++》、《Effective STL》及《C++编程规范》等,才适宜踏入专业C++开发之路;
- 第三层次,深入了解C++:关于全局问题可读《深入探索C++对象模型》、《Imperfect C++》、《C++沉思录》、《STL源码剖析》,要挑战智商,可看关于模版及模版元编程的书籍如《C++ Templates》、《C++设计新思维》、《C++模版元编程》;
- 第四层次,研究C++:阅读《C++语言的设计和演化》、《编程的本质》(含STL设计背后的数学根基)、C++标准文件《ISO/IEC 14882:2003》、C++标准委员会的提案书和报告书、关于C++的学术文献。
由于我主要是应用C++,大约只停留于第二、三个层次。然而,C++只是软件开发的一环而已,单凭语言并不能应付业务和工程上的问题。建议读者不要强求几年内“彻底学会C++的知识”,到达第二层左右便从工作实战中汲取经验,有兴趣才慢慢继续学习更高层次的知识。虽然学习C++有难度,但也是相当有趣且有满足感的。
微信公众号: 猿人谷
如果您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】
如果您希望与我交流互动,欢迎关注微信公众号
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。