相信有非常大一部分学计算机的童鞋都是靠自学,即使本身是计算机专业的同学,也会认为只通过课堂上的学习是远远不够的,并且在上课时所用到的教材也不够好。然而自学的时候有个非常大的问题就是找不到合适的方向和学习路线,我在刚開始的时候也吃过这种亏,总是纠结于语言的学习。认为编程就是学非常多语言。然而单纯学习语言并不能解决这个问题。我们须要学习的是一个完整的体系,而编程语言只只是是当中一个解决这个问题的工具而已。

后来我通过不断摸索。积累学习经验,总结出了一套个人感觉非常不错的学习路线。

    首先要选则一门重点的学习语言,我在学习编程期间。接触过C,C++。JAVA,Python。也自己做过小的android应用开发。终于还是选择了以C++为重点学习方向,由于我认为这门语言太强大并且足够优雅。以下就说说须要阅读并理解的经典书籍,尽管有非常多我也没有读完。可是或多或少读了一部分,认为确实经典,如今也仍在学习中。

    首先必备的入门书籍就是这本《C程序设计语言》,这本书也是公认的C语言圣经。大多数人都是以谭浩强那么书入门,我也看过谭浩强版的那本书,尽管讲的非常清晰易懂,可是感觉并不能算上经典,书中错误的地方也非常多。课后题出的也非常水。所以还是向推荐这本机械工业出版社出版的《C程序设计语言》。

    

    接下来推荐的这本书《C陷阱与缺陷》,尽管被誉为经典。可是我自己认为读完后收获不能算太大,所以说不是必需刻意去学习,只是有多的时间也能够阅读一下,书内容非常少,两到三天就能看完整本书。

    

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

    既然是C++的学习路线,那么《C++ Primer》这本书肯定是必学不可的,这个就不用不说了。只是书的内容相当多,印象中有800多页,我大概花了一个月左右时间才学完。

    

    

    学习玩了C++的基础知识,当然就须要进行延伸了。接下来就须要看这本书《Effective C++》,非常经典,相信学习C++的人差点儿都是人手一本,书中讲了非常多C++使用条款,教你怎样更高效地使用C++。

    

    C++的C语言最大的不同当然就是C++支持面向对象的设计方法,所以,学习C++面向对象的语法和使用当然就是必须的,这里推荐经典《深度探索C++对象模型》,里面讲了虚函数的实现原理,函数重载实现原理等非常多重要知识。

    

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

    个人认为STL是C++的精髓。因此,学习STL是必须的。

推荐经典书籍《STL源代码剖析》。这本书主要学习前面部分内存的分配。容器的实现原理。

    

    学完了这些之后就对C++的基础掌握的非常不错了。接下来就须要学习一下C++体系结构里面另外一些重要的基础知识了。比方操作系统。

这里推荐一本最经典的操作系统书籍《深入理解计算机系统》。

这本书我认为适合重复研读多变。由于非常难做到看一次就掌握书里的全部内容。

    

    操作系统是必须掌握的基础知识。当然另一项必须掌握的基础知识。那就是计算机网络了。

推荐这本书《TCP/IP 具体解释 卷1:协议》。

    

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

    当然,我们还须要了解一些经常使用的数据结构和算法。推荐《数据结构与算法分析 C语言描写叙述》,事实上说实话用这本书入门难度有点偏大,须要耐心学习。

    

    到这里。我们整个基础体系就学习得几乎相同了。可是C++的应用方向大多都是后台或者server开发,所以我认为必须要学会Linux系统。甚至压根不要在Windows环境下编程。多使用Linux系统。

学习Linux首先须要学习基本操作。入门首选书籍《鸟哥的linux私房菜》。

    

    掌握了基本操作。我们就要学习在Linux环境下进行编程,推荐经典《Unix环境高级编程》。《Unix网络编程》两套系列书籍,加起来总共三本。

    

    

    以上就是我总结出来的C++学习路线。个人感觉还是非常不错的。应该是适合大多数想要学好C++的人,一起学习一起进步。

C++ 学习路线推荐的更多相关文章

  1. java学习路线推荐,希望能帮到你

    很多小白刚开始学习java时,肯定迷惘过,因为对java基本是啥也不懂的,一直想知道java的具体学习路线,我曾经也看了许许多多的java经验分享的帖子,评论,以及其他各种培训机构所谓的学习路线,特别 ...

  2. Java初学者的学习路线推荐

    Java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是你是如何学习Java的,能不能给点建议?今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈每 ...

  3. web前端学习路线推荐(讲的很细致)

    前端要学习三个部分:HTML,CSS,JavaScript(简称JS),因此首先明确三个概念:HTML是内容层,它的目的是表示一个HTML标签在页面里是个什么角色. CSS是样式层,它的目的是表示一块 ...

  4. 我推荐的 Java Web 学习路线

    晚上再 V2 的 Java 的节点看到有人问 Java Web 书籍推荐.我这半年多的时间,也从别的方向开始转向 Java 服务端开发,所以,我来说下我的学习路线,帮助有需要的朋友把半只脚踏进 Spr ...

  5. Java后端学习,推荐书籍和学习路线

    最近在学习Java和全栈开发,推荐一些有用的书籍 书架主要针对Java后端和全栈开发用的 书籍介绍 <Spring Boot 2.0企业级应用开发实战> 本书深入浅岀地讲解了 Spring ...

  6. 程序员大佬推荐的java学习路线

    作为我的第一篇博客,我第一个想到的就是在校时就看到的这篇文章.并且在之后的时间里自己都反复观看过,有时候这不单单是一篇学习路线,也是审视自己技术能力的里程碑,和激励自己的鞭挞绳. 先来个书籍清单: & ...

  7. 【强烈推荐】可能是最适合你的 Java 学习路线和方法

    如遇链接无法打开,建议使用 https://github.com/Snailclimb/JavaGuide/blob/master/docs/questions/java-learning-path- ...

  8. Python学习路线【对标大厂Python工程师的招聘要求,并推荐优质免费资源】打卡学习不迷茫

    您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦. 本文要点:从Python爬虫工程师的招聘要求出发制定学习路线,同时还推荐免费优质的学习资源. 打卡学习不迷茫. 干货满满,建议收藏,需要用到时常看 ...

  9. 从啥也不会到可以胜任最基本的JavaWeb工作,推荐给新人的学习路线(二)

    在上一节中,主要阐述了JavaScript方面的学习路线.先列举一下我朋友的经历,他去过培训机构,说是4个月后月薪过万,虽然他现在还未达到这个指标. 培训机构一般的套路是这样:先教JavaSE,什么都 ...

随机推荐

  1. node.js操作Cookie

    node.js操作Cookie http://www.tuicool.com/articles/F3UF7n

  2. Sqoop1与Sqoop2的比较

    1.sqoop1和sqoop2是两个不同的版本,它们是完全不兼容的. 2.版本划分方式:Apache 1.4.x 之后的版本属于sqoop1,1.99.x之上的版本属于sqoop2. 3.与sqoop ...

  3. Important Abstractions and Data Structures

    For Developers‎ > ‎Coding Style‎ > ‎ Important Abstractions and Data Structures 目录 1 TaskRunne ...

  4. codeforces 140E.New Year Garland

    传送门: 解题思路: 要求相邻两行小球颜色集合不同,并且限制行内小球相邻不同. 由此可得:每行小球排列都是独立与外界的, 所以答案应该是对于所有行的颜色集合分类,在将行内的答案乘到上面. 先考虑如何分 ...

  5. PHP获取一周后的时间戳

    echo strtotime("now");//相当于将英文单词now直接等于现在的日期和时间,并把这个日期时间转化为unix时间戳.这个效果跟echo time();一样. ec ...

  6. android 动态设置TextView值,例:金额添加

    一说到动态递增设置TextView值,非常多人应该立即就想到起个线程,让后在线程中睡眠指定时间,使用handler发送消息更新TextView值! 这样是实现了动态递增设置TextView值可是效率不 ...

  7. Android照片墙完整版,完美结合 内存方案 LruCache 和 硬盘方案 DiskLruCache

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/34093441 在上一篇文章当中,我们学习了DiskLruCache的概念和基本用法 ...

  8. java接口理解(转载)

    今天和同事好好的讨论了java接口的原理和作用,发现原来自己的对接口的理解仅仅是局限在概念的高度抽象上,觉得好像理解了但是不会变化应用其实和没有理解差不多.以前看一个帖子说学习一个东西不管什么时候都要 ...

  9. the night the room

    http://bogifabian.com/?page_id=2529 I am trying to creat dreamful atmospheres, paint walls and floor ...

  10. JQ 实施编辑 (clone()复制行||双击编辑)

    //代码 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <titl ...