C/C++学习规划与发展指引

来源:互联网 发布:数据分析师培训班费用 编辑:程序博客网 时间:2024/05/18 17:39
 因为CSDN论坛的绝大数坛友都是学生党或者职场菜鸟,所以此贴专门为这两大群体服务。

    尤其是学生党,因为后知后觉往往容易浪费宝贵的大学4年时光,可以说大学4年对一生至关重要。我相信主动来CSDN论坛学习的同学,无论当下水平如何,都是希望进步的,都是对编程有兴趣的。

    同为职场菜鸟,我对职场菜鸟同样有一些见解。一方面,很多步入职场的菜鸟大学4年并没有学到太多东西,上班对你可能起初非常痛苦,就像被人拖着走一样,总感觉有事做不完,越是这样你越应该耐心的把书本拾起来,一步一步追赶上来,“三日不见当刮目相看”,何况一年有365日。 另一方面,很多职场菜鸟容易对语言抱有信仰,不愿意或者觉得接受新知识很吃力,希望你们能够跳脱出来,技术单一无法立足,这是不可动摇的事实,今日的苦是明日的果,该好好规划自己的职业发展了。

    下面将会推荐在C/C++方向的若干经典书籍,依据操作系统进行划分,分为WINDOWS与LINUX两个方向。

    希望在C/C++编程领域有长足发展的小鸟们都应当引起足够的重视,我不推荐算法或者数据结构的书籍,我也不推荐C,C++的基础语言书籍,只要把握一个准则:那就是读大家认可的书,对自己负责。

    我做这个帖子的目的,是因为我注意到很多学生党在每年4月开始实习生招聘,毕业生招聘期间非常着急的询问自己够不够资格,进企业需要掌握什么技术。 与这个现象对应的问题根源就是大家似乎将“掌握一门开发语言”当做了“我会编程”。

    为了让学生党尽早的了解学习方向,知道企业需要什么样的人才,充分的利用大学时光充实自我,找到自我价值,以下便是推荐书籍:


C++开发
 
1.《C++ Primer》:全面学习C++的必备书籍
2.《Thinking in C++》:了解C++背后的一些机制
3.《深度探索C++对象模型》:深入了解C++,也是学习COM的必经之路

Windows平台
入门
1.《Windows程序设计》:这本书主要讲的是Windows API的使用,是Windows编程入门书籍。上册涉及到的知识基本上就够用了,时间不充裕的话阅读上册即可。
 
2.《Win32多线程程序设计》:Windows下多线程编程必备
 
3.《Windows核心编程》:Window平台基础知识:消息机制,内存管理,多线程,动态链接库等
 
4.《Windows网络编程》:介绍Windows下各种网络协议的开发和并发处理模型。
 
进阶
1.《深入浅出MFC》:Windows下编程,MFC虽然有些过时,但其机制还是有学习的价值。重点学习书中提到的MFC 6大机制
 
2.《COM本质论》:COM是Windows构建用户态的重要技术之一,Windows开发必修课,本书对COM的设计动机作了深入阐述
 
3.《深入解析ATL》:ATL全名Active Templete Library,是用C++的模版封装了COM,这本书主要讲的是对源码分析
 
4.《WTL White Paper》:WTL源自微软,基于ATL的一套开源模版库,主要用于界面编程和工具类的使用
 
5.《代码大全》:这边书主要讲的是工程编码规范
 
高级
1.《深入解析Windows操作系统》:Windows大牛书籍,讲的主要是Windows操作系统的内核原理
 
调试技术
1.《软件调试》
 
2.《Windows高级调试》
 
3.《windows用户态程序高效排错》



Linux平台
Linux内核
1.《Linux Kernel Development》/《Linux内核设计与实现》:Robert Love的著作,不厚的一本书,深入浅出地将Linux内核娓娓道来
 
Linux使用和Shell编程
1.《sed & awk》/《sed与awk》:sed与awk都是Linux下常用的日志分析利器
 
Linux编程
1.《Beginning Linux Programming》/《Linux程序设计》:老牌的Linux编程入门书
 
2.《Advanced Programming in the Unix Environment》/《Unix环境高级编程》:对Unix编程环境做了细致的总结,涵盖了进程间通讯、网络通讯、文件系统等各方面的知识
 
网络编程
1.《TCP/IP Illustrated, Volume I》/《TCP/IP详解,卷一》:对理解TCP/IP协议的设计理念和协议细节有显著的帮助。
 
2.《Unix Network Programming》/《Unix网络编程》,卷一、卷二:网络编程方面难以逾越的著作,事无巨细、深入浅出,强烈推荐