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

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

    首先要选则一门重点的学习语言,我在学习编程期间。接触过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. legend---二、如何降低编程复杂度

    legend---二.如何降低编程复杂度 一.总结 一句话总结:配置文件,数据库 个性的东西可以一起写入数据库,那么编程复杂度会大幅降低,页面灵活度也大幅降低(特有属性写进数据库) 比如不同难度的颜色 ...

  2. 外连接OUTER JOIN(三十五)

    外连接OUTER JOIN   LEFT [OUTER] JOIN,左外连接 显示左表的全部记录及右表符合连接条件的记录 下面我们来演示一下,操作命令及部分结果如下: SELECT goods_id, ...

  3. jQuery中四种事件监听的区别

    原文链接:点我 我们知道jquery提供了四种事件监听方式,分别是bind.live.delegate.on,下面就分别对这四种事件监听方式分析. 已知有4个列表元素: 列表元素1 列表元素2 列表元 ...

  4. php,javascript设置和读取cookie

    1.php设置cookie setcookie($name,$value,expire,path,domain,secrue); //$name:指的是cookie的名字:$value指的是cooki ...

  5. Linux下安装Go环境

    登录Linux Mac或Linux的用户可以用命令ssh root@xxx.xxx.xxx.xxx登录主机Window的用户可以使用SecureCRT登录主机虚拟机用户直接打开你的虚拟机 安装Go环境 ...

  6. 无法在WEB服务器上启动调试

    错误:站点使用 IP 地址 Visual Studio 2012 调试器尝试自动附加到正在使用 IP 地址的 Web 应用程序时,会发生该错误. 如果在 IIS 中将“网站标识”更改为“使用特定 IP ...

  7. iterator的使用和封个问题

    这篇文章的内容还是不错的: http://www.cnblogs.com/zhuyf87/archive/2012/12/08/2808290.html for (vector<int>: ...

  8. Reuse Is About People and Education, Not Just Architecture

     Reuse Is About People and Education, Not Just Architecture Jeremy Meyer you MigHT AdopT THE AppRoA ...

  9. BRep Shapes Based on Tessellated Geometry

    BRep Shapes Based on Tessellated Geometry eryar@163.com Key Words. BRep Shape, Tessellated Geometry, ...

  10. vim 基础学习之global

    global命令可以在指定模式下,匹配行上进行Ex命令 使用格式: :[range]g[lobal]/{pattern}/[cmd] range-是执行范围(如果缺省,是%) global-命令关键字 ...