但C++和“成为高级Windows程序员”有多大相关性?
并且不太可能一年成为高级Windows程序员, 基本上1年时间在绝大多数技术领域都远远不够。
怎么感觉c++primer是很基础的书啊。。。?
比較高級的有《Modern C++》、《C++ Templates》、《Imperfect C++》、《Exceptional
C++》之類。最理想是看一遍C++ ISO Standard...
另外,《现代优化算法》是甚麼?
在 2010年4月29日下午3:23,guihua wu <guihua...@gmail.com> 寫道:
>> 怎么感觉c++primer是很基础的书啊。。。?
>
--
Milo Yip
Twitter @miloyip
http://www.cnblogs.com/miloyip/
http://miloyip.seezone.net/
记得这也是本不错的入门书 Inside The C++ Object Model,初学者在看c++ primer的时候配合这个,容易理解的多
此学习路线按照由浅到深、循序渐近的过程设计,并考虑了初学者的兴趣所在。必免了一开始就接触复杂的定理和概念,这样可以始初学者在每个阶段都会有满足的成就感,以便于增强信心,持之以恒。
各阶段的时间是以每天花8小时学习来计算的,如果你每天只能花4小时,则需延长一倍的时间。如果你在某阶段的学习少于最短时间,要么你是天才,要么就可能没有吃透。而超过最多时间的学习很可能会令你在当前的阶段感到困挠。
1. C++语言入门。可看任一本C++入门书,如果没有C语言基础应先学习C语言的基本语法。重点学习C++新的代码形式,养成良好的编程习惯,熟练掌握内存的管理技术,了解类的定义和使用方法,较复杂的类继承关系和泛型技术可不看。各部分主题不要过于深入的探索,但熟练掌握此阶段的内容则需一定量的练习(比如书中各章节后所附的简单的练习题),因各人基础不同需2-4个月。
2. MFC入门。可看《VC++技术内幕》或任一本常见的VC++入门书籍。此阶段要大量练习,熟悉掌握Visual Studio的开发环境,包括代码编辑、编译、调式和查阅MSDN的技巧,可加入http://community.csdn.net论坛参与讨论。熟练掌握Windows窗体程序的建立和基本编程方法。通过查阅MSDN,了解MFC库中各常用类的功能和基本用法,了解常用Windows API的基本使用方法和Windows的消息机制。关于SDK的深层次内容以及MFC内部实现和设计方法可先不作了解,此阶段需3-6个月。
3. SDK入门。学习脱离MFC,仅依靠SDK编写各种Windows程序界面。可看《Windows高级编程指南》,如能熟练查阅MSDN和利用互联网,可不必看书。熟练掌握WindowsAPI的调用方法,深入理解消息传递机制,掌握Windows内存管理机制。利用之前所学知识,练习和体会利用C++面向对象技术对API进行封装的基本方法。若有需要还可使用相应的参考书初步学习数据库、网络编程、多线程编程、GDI+、COM、OpenGL、 DirectX、WDK/DDK等专门编程技术。依所学内容的不同,需3-6个月。
4. C++语言精通,可参看《C++ Primer》,《Think In C++》,《(More) Effective C++》,《Essential、C++》,《C++ STL》等名著,熟练掌握C++泛型编程技术,深入理解类的继承机制,熟悉掌握STL的使用方法。在参考书的指导下阅读STL的内部实现代码,理解其设计思路,并可利用新学到的技术对上一阶段的内容进行实践。此阶段需2-4个月。
5. MFC和SDK的精通,可看《深入浅出MFC》,《Windows核心编程》。另可选择性概览《设计模式》,《人月神话》,《快速软件开发》,《UML和模式应用》以便了解当前大型项目的设计和管理模式。综合利用MFC、SDK和C++的面向对象与泛型技术解决实际问题,开发2-3个代码量在2000行以上的小项目。时间因人而异,需2-4个月。此阶段为入门学习的最后一个阶段,完成后就可以称之为一名高级的Windows程序员了。
6. 如要进行更深层次的学习,应脱离语言和系统,学习专业编程知识或各类算法。如果要走学术型路线,可深入学习各类数学,包括高等微积分、高等代数、数值分析、数理统计、离散数学等。可参考的计算机专业书籍有《数据结构》、《算法导论》、《现代优化算法》、《模式识别与机器学习》、《人工智能导论》、《TAOCP》……学海无崖,祝君好运!
我坚信我活的比党久。
欢迎 Follow @devymex
这本书,算不得是C++的入门书吧?至少得有相当基础才能来看。难度是比c++ Primer深入一些。
JJHou 的翻译我觉得还是挺对口味的,我有一中文版并仔细看了2遍(也是好久以前的了);倒是英文版没仔细再看
在 2010年4月29日下午4:09,Mikster.Z <china...@gmail.com> 寫道:
> ....那也不用变成高级windows程序员这么吓人吧.....
>> 我坚信我活的比党久。
>> 欢迎 Follow @devymex
Unix下的开发,好歹得unix环境编程,unix shell编程,C++(或者C),各种工具的学习(aCC?CC?GCC?VI,
makefile等~~~),这堆是基础~
然后,再看自己的方向学习更灵活的脚本,学习网络编程,进程,数据库等了吧。。。
拙见~轻拍
Programming Windows -- 讲GUI的
Windows via C++ -- 就是Windows核心编程 主讲各种内核对象的概念
Essential COM -- 讲COM没有比这更好的啦,当然讲COM的也不多,虽然COM"过时"了,但是这本书每次看都有新体会,没事儿看看也蛮好
2010/4/29 Ken <ken....@gmail.com>:
>> 《TAOCP》......学海无崖,祝君好运!
>>
>>
>> 我坚信我活的比党久。
>> 欢迎 Follow @devymex
>>
>
>
>> 说实话C++ Programming Language是我的c++入门书,但是基于当时对语言及像数据结构、算法之类接触还很少,所以对此书的理解是很少的。
哥们需要再读
2010/4/29 Ken <ken....@gmail.com>:
--
Tinyfool的开发日记 http://www.tinydust.net/dev/
代码中国网 http://www.codechina.org
myTwitter: http://twitter.com/tinyfool
2010/4/29 qiaojie <qia...@gmail.com>:
2010/4/29 hayate <haya...@gmail.com>:
On Apr 29, 2:57 pm, Devymex <devy...@gmail.com> wrote:
> 此学习路线按照由浅到深、循序渐近的过程设计,并考虑了初学者的兴趣所在。必免了一开始就接触复杂的定理和概念,这样可以始初学者在每个阶段都会有满足的
> 成就感,以便于增强信心,持之以恒。
>
> 各阶段的时间是以每天花8小时学习来计算的,如果你每天只能花4小时,则需延长一倍的时间。如果你在
> 某阶段的学习少于最短时间,要么你是天才,要么就可能没有吃透。而超过最多时间的学习很可能会令你在当前的阶段感到困挠。
>
> 1. C++语言入门。可看任一本C++入门书,如果没有C语言基础应先学习C语言的基本语法。重点学习C++新的代码形式,养成良好的编程习惯,熟练掌握内存
> 的管理技术,了解类的定义和使用方法,较复杂的类继承关系和泛型技术可不看。各部分主题不要过于深入的探索,但熟练掌握此阶段的内容则需一定量的练习(比
> 如书中各章节后所附的简单的练习题),因各人基础不同需2-4个月。
>
> 2. MFC入门。可看《VC++技术内幕》或任一本常见的VC++入门书籍。此阶段要大量练习,熟悉掌握Visual
> Studio的开发环境,包括代码编辑、编译、调式和查阅MSDN的技巧,可加入http://community.csdn.net论坛参与讨论。熟练
> 掌握Windows窗体程序的建立和基本编程方法。通过查阅MSDN,了解MFC库中各常用类的功能和基本用法,了解常用Windows
> API的基本使用方法和Windows的消息机制。关于SDK的深层次内容以及MFC内部实现和设计方法可先不作了解,此阶段需3-6个月。
>
> 3. SDK入门。学习脱离MFC,仅依靠SDK编写各种Windows程序界面。可看《Windows高级编程指南》,如能熟练查阅MSDN和利用互联网,可
> 不必看书。熟练掌握WindowsAPI的调用方法,深入理解消息传递机制,掌握Windows内存管理机制。利用之前所学知识,练习和体会利用C++面
> 向对象技术对API进行封装的基本方法。若有需要还可使用相应的参考书初步学习数据库、网络编程、多线程编程、GDI+、COM、OpenGL、
> DirectX、WDK/DDK等专门编程技术。依所学内容的不同,需3-6个月。
>
> 4. C++语言精通,可参看《C++ Primer》,《Think In C++》,《(More) Effective
> C++》,《Essential、C++》,《C++
> STL》等名著,熟练掌握C++泛型编程技术,深入理解类的继承机制,熟悉掌握STL的使用方法。在参考书的指导下阅读STL的内部实现代码,理解其设计
> 思路,并可利用新学到的技术对上一阶段的内容进行实践。此阶段需2-4个月。
>
> 5. MFC和SDK的精通,可看《深入浅出MFC》,《Windows核心编程》。另可选择性概览《设计模式》,《人月神话》,《快速软件开发》,《UML和
> 模式应用》以便了解当前大型项目的设计和管理模式。综合利用MFC、SDK和C++的面向对象与泛型技术解决实际问题,开发2-3个代码量在2000行以
> 上的小项目。时间因人而异,需2-4个月。此阶段为入门学习的最后一个阶段,完成后就可以称之为一名高级的Windows程序员了。
>
> 6. 如要进行更深层次的学习,应脱离语言和系统,学习专业编程知识或各类算法。如果要走学术型路线,可深入学习各类数学,包括高等微积分、高等代数、数值分
> 析、数理统计、离散数学等。可参考的计算机专业书籍有《数据结构》、《算法导论》、《现代优化算法》、《模式识别与机器学习》、《人工智能导论》、
> 《TAOCP》......学海无崖,祝君好运!
>
> 我坚信我活的比党久。
> 欢迎 Follow @devymex
此学习路线按照由浅到深、循序渐近的过程设计,并考虑了初学者的兴趣所在。必免了一开始就接触复杂的定理和概念,这样可以始初学者在每个阶段都会有满足的 成就感,以便于增强信心,持之以恒。
各阶段的时间是以每天花8小时学习来计算的,如果你每天只能花4小时,则需延长一倍的时间。如果你在 某阶段的学习少于最短时间,要么你是天才,要么就可能没有吃透。而超过最多时间的学习很可能会令你在当前的阶段感到困挠。
1. C++语言入门。可看任一本C++入门书,如果没有C语言基础应先学习C语言的基本语法。重点学习C++新的代码形式,养成良好的编程习惯,熟练掌握内存 的管理技术,了解类的定义和使用方法,较复杂的类继承关系和泛型技术可不看。各部分主题不要过于深入的探索,但熟练掌握此阶段的内容则需一定量的练习(比 如书中各章节后所附的简单的练习题),因各人基础不同需2-4个月。
2. MFC入门。可看《VC++技术内幕》或任一本常见的VC++入门书籍。此阶段要大量练习,熟悉掌握Visual Studio的开发环境,包括代码编辑、编译、调式和查阅MSDN的技巧,可加入http://community.csdn.net论坛参与讨论。熟练 掌握Windows窗体程序的建立和基本编程方法。通过查阅MSDN,了解MFC库中各常用类的功能和基本用法,了解常用Windows API的基本使用方法和Windows的消息机制。关于SDK的深层次内容以及MFC内部实现和设计方法可先不作了解,此阶段需3-6个月。
3. SDK入门。学习脱离MFC,仅依靠SDK编写各种Windows程序界面。可看《Windows高级编程指南》,如能熟练查阅MSDN和利用互联网,可 不必看书。熟练掌握WindowsAPI的调用方法,深入理解消息传递机制,掌握Windows内存管理机制。利用之前所学知识,练习和体会利用C++面 向对象技术对API进行封装的基本方法。若有需要还可使用相应的参考书初步学习数据库、网络编程、多线程编程、GDI+、COM、OpenGL、 DirectX、WDK/DDK等专门编程技术。依所学内容的不同,需3-6个月。
4. C++语言精通,可参看《C++ Primer》,《Think In C++》,《(More) Effective C++》,《Essential、C++》,《C++ STL》等名著,熟练掌握C++泛型编程技术,深入理解类的继承机制,熟悉掌握STL的使用方法。在参考书的指导下阅读STL的内部实现代码,理解其设计 思路,并可利用新学到的技术对上一阶段的内容进行实践。此阶段需2-4个月。
5. MFC和SDK的精通,可看《深入浅出MFC》,《Windows核心编程》。另可选择性概览《设计模式》,《人月神话》,《快速软件开发》,《UML和 模式应用》以便了解当前大型项目的设计和管理模式。综合利用MFC、SDK和C++的面向对象与泛型技术解决实际问题,开发2-3个代码量在2000行以 上的小项目。时间因人而异,需2-4个月。此阶段为入门学习的最后一个阶段,完成后就可以称之为一名高级的Windows程序员了。
6. 如要进行更深层次的学习,应脱离语言和系统,学习专业编程知识或各类算法。如果要走学术型路线,可深入学习各类数学,包括高等微积分、高等代数、数值分 析、数理统计、离散数学等。可参考的计算机专业书籍有《数据结构》、《算法导论》、《现代优化算法》、《模式识别与机器学习》、《人工智能导论》、 《TAOCP》……学海无崖,祝君好运!
我坚信我活的比党久。
欢迎 Follow @devymex
Twitter: @jeffz_cnFrom: sail tsaoSent: Friday, April 30, 2010 6:33 PMSubject: Re: [TL] {讨论}零起点,一年成为高级Windows程序员的最佳学习路线吖,对了,Windows的开发由于2010出来,更多的会转向WPF来做UI,C#写逻辑。个么又要去学一下.NET,又要学XML,又要学XXXXXXX...
哎,visual studio 2010出来也不一定就能推广wpf,wpf现在还没啥杀手级的应用,vs2010也只是用wpf开发了代码编辑框而已,如果完全用wpf开发出vs2010,我相信wpf一定能一下子火起来,因为vs2010的编辑框确实会让用户眼前一亮,界面上的美化提升了不少。我倒是期待微软能在silverlight上下点力气在webgame领域抢flash一杯羹,这样我就可以去做webgame客户端了!
忍不住了,楼主分析得很有道理。
1 C++ 语言入门
应该看 C++ Programming Language,个人以为 c++ primer 和此书不在一个档次上。
2 MFC 不应该在这个时候看,第二个阶段应该是SDK入门
做法是抱着MSDN啃
3 C++ 精通
还是 C++ Programming Language,但是得加上 STL, 深度探索C++ Object对象等
4 开始研究 WTL, 模板,设计模式等技术了
MFC 永远都不要看,为什么?
因为MFC设计在90年代,现在语言变化太大了,还要抱着玩具不放么?
2010/5/1 Jeffrey Zhao <je...@live.com>:
目前项目还没有完全切换到2010上来,还需要再观察观察
2010/5/1 Jeffrey Zhao <je...@live.com>:
> 我倒觉得还好,现在在1G内存的虚拟机里也是2、3个VS 2010一开,使用体验流畅。
>
> 如果你觉得卡的话,不知道你用的是不是RTM?Beta很卡,然后Beta 2、RC、RTM每次都快上不少。
>
> 在这方面看推上的评价也和我感觉差不多,有人还觉得10比08要顺畅。
>
>
> Jeffrey Zhao
> Blog: http://blog.zhaojie.me/
> Twitter: @jeffz_cn
>
> --------------------------------------------------
> From: "hayate" <haya...@gmail.com>
> Sent: Saturday, May 01, 2010 8:36 PM
> To: <pon...@googlegroups.com>
> Subject: Re: [TL] {讨论}零起点,一年成为高级Windows程序员的最佳学习路线
>
>> 不管怎么说,vs2010更慢了,更吃内存了
>>
>> 2010/5/1 Jeffrey Zhao <je...@live.com>:
>>>
>>> 原来不是完整重写,而是整体界面框架、编辑器、新工具和部分旧窗口用WPF重写了,而另一些旧窗口比如Solution
>>> Explorer、Toolbox还有WinForm Designer这种原本用WinForm实现更自然的组件,还是保留原来的实现。
>>> Jeffrey Zhao
>>> Blog: http://blog.zhaojie.me/
>>> Twitter: @jeffz_cn
>>> From: sail tsao
>>> Sent: Saturday, May 01, 2010 3:40 AM
>>> To: pon...@googlegroups.com
>>> Subject: Re: [TL] {讨论}零起点,一年成为高级Windows程序员的最佳学习路线
>>> To 赵姐夫:
>>>
>>> http://blogs.msdn.com/visualstudio/archive/2010/02/16/wpf-in-visual-studio-2010-part-1.aspx
>>> 你要的资料,这个博文里说的很清楚。
>>>
>>> 在 2010年5月1日 上午2:52,Liu Jiang <liuj....@gmail.com>写道:
>>>>
>>>> 微软貌似已经把Silverlight放在更中心位置,听MS的人说已经有很多企业级应用开始转用SL而非WPF。
>>>>
>>>> 在 2010年5月1日 上午12:03,Push Chen <littl...@gmail.com>写道:
>>>>>
>>>>> Push Chen
>>>>> --
>>>>> A Web Developer, current project WOScript.
>>>>> MSN: drunka...@msn.com
>>>>> Mail: push...@gmail.com
>>>>> Web: http://pushchen.com
>>>>> Twitter: http://twitter.com/littlepush
>>>>> Mobile: (86)13524446040
>>>>>
>>>>>
>>>>> 2010/4/30 Jeffrey Zhao <je...@live.com>
>>>>>>
>>>>>> VS 2010只用WPF开发了代码编辑器?我为什么听到的官方非官方的消息都是说重写了呢?可有资料可以参考一下?
>>>>>
>>>>> 我听说的也是全用WPF做的UI吖。
>>>>>
>>>>>>
>>>>>> Jeffrey Zhao
>>>>>> Blog: http://blog.zhaojie.me/
>>>>>> Twitter: @jeffz_cn
>>>>>> From: sail tsao
>>>>>> Sent: Friday, April 30, 2010 6:33 PM
>>>>>> To: pon...@googlegroups.com
>>>>>> Subject: Re: [TL] {讨论}零起点,一年成为高级Windows程序员的最佳学习路线
>>>>>> 吖,对了,Windows的开发由于2010出来,
>>>>>> 更多的会转向WPF来做UI,C#写逻辑。个么又要去学一下.NET,又要学XML,又要学XXXXXXX...
>>>>>>
>>>>>> 哎,visual studio
>>>>>>
>>>>>> 2010出来也不一定就能推广wpf,wpf现在还没啥杀手级的应用,vs2010也只是用wpf开发了代码编辑框而已,如果完全用wpf开发出vs2010,我相信wpf一定能一下子火起来,因为vs2010的编辑框确实会让用户眼前一亮,界面上的美化提升了不少。我倒是期待微软能在silverlight上下点力气在webgame领域抢flash一杯羹,这样我就可以去做webgame客户端了!
>>>>>
>>>>>
>>>>> WPF不见得能推广的很好,但WPF的思想是未来发展的主流:桌面应用和Web应用的无界发展。
>>>>> 个人觉得就算成为了原本意义上的高级Windows程序员也没有什么意义,还不如成为高级Web开发人员。
>>>>>
>>>>>>
>>>>>> 额,再弱弱的问下,楼主文章写的如此精辟,敢问楼主成为“高级windows程序员"花了多久时间?
>>>>>>
>>>>>> 在 2010年4月30日 下午5:54,Kula <kula...@gmail.com>写道:
>>>>>>>
>>>>>>> 这个不是零起点吧。起码他英文要会吧。不然怎么看资料
>>>>>>>
>>>>>>> 2010/4/30 Push Chen <littl...@gmail.com>
>>>>>>>>
>>>>>>>> 这样一年学下来估计连什么是内核对象都没搞清楚……
>>>>>>>> 是不是还需要知道进程调度、多线程、网络通讯、消息机制?
>>>>>>>> 那必然就需要先搞懂P/V源语、等待队列、Socket、TCP/IP、UDP、7层模型、Hook、Hook List。
>>>>>>>> 再下去搞P/V搞多线程势必得数据结构和算法得要有一定的功底……
>>>>>>>>
>>>>>>>>
>>>>>>>> 吖,对了,Windows的开发由于2010出来,更多的会转向WPF来做UI,C#写逻辑。个么又要去学一下.NET,又要学XML,又要学XXXXXXX...
>>>>>>>> 然后,所谓“高级Windows程序员”,是不是至少要懂基本的软件开发流程、懂什么叫单元测试、懂瀑布模型、敏捷开发、CMMI……?
>>>>>>>> 一年时间?别搞笑了。
>>>>>>>> Push Chen
>>>>>>>> --
>>>>>>>> A Web Developer, current project WOScript.
>>>>>>>> MSN: drunka...@msn.com
>>>>>>>> Mail: push...@gmail.com
>>>>>>>> Web: http://pushchen.com
>>>>>>>> Twitter: http://twitter.com/littlepush
>>>>>>>> Mobile: (86)13524446040
>>>>>>>>
>>>>>>>>
>>>>>>>> 2010/4/30 朱晋玄 <zhuji...@gmail.com>
>>>>>>>>>
>>>>>>>>> 其实我觉得LZ的每天八小时即使在已经相当于是一个计算机系一个学年还多了......
>>>>>>>>> 并且同问什么是高级windows程序员
1: 熟悉C语言(参考书籍:C程序设计:现代方法第2版,第2版很厚,增加了c99内容。),然后在做书上的例题的同时,学会cl编译器的使用,当然
是命令提示符下cl和link的使用。注:如果你在这时手上有一本‘深入理解计算机系统’就更好了,虽然那本书是针对类unix OS 的,但是底层的
原理是一成不变的,unix-center.net这个实验室可以满足你在操作系统上的困难,书很厚,可以慢慢看。其实 王爽的‘汇编语言’也可以看
看,汇编的语法是intel格式的。
2: 学习windows sdk程序设计(参考书目:windows程序设计:第五版,书也很厚。),在此阶段学会使用vc++ IDE。
3: 学习windows OS 的特性,(参考书目:windows核心编程,书同样的厚。)。
4: C++何时学? 我自己在C++学习上遇到过困难,特别是mfc这个C++应用程序框架,C++已经被我暂时放下,所以这个问题,还是应该让成
熟、有经验的C++ Programmer说。
COM内涵是很博大精深的,Don Box的Com本质论 是不错的开始
Mozilla 的XPCOM是不错的实现,ATL是MS Com的好工具
2010/4/29 qiaojie <qia...@gmail.com>
Essential COM没啥好看的,看完了你也不会开发COM,学COM还是看ATL Internals好,顺便对提升C++水平也很有好处。
2010/4/29 hayate <haya...@gmail.com>
WTL这种东西看不看无所谓,但是搞Native Win开发,特别是advanced一点的,COM是必须要学习的。
其实这贴提到很多东西都和Win无关,属于通用的基础,比如C++的学习,个人感觉学习Win开发需要看的三本书
Programming Windows -- 讲GUI的
Windows via C++ -- 就是Windows核心编程 主讲各种内核对象的概念
Essential COM -- 讲COM没有比这更好的啦,当然讲COM的也不多,虽然COM"过时"了,但是这本书每次看都有新体会,没事儿看看也蛮好
2010/4/29 Ken <ken....@gmail.com>:
>> 《TAOCP》......学海无崖,祝君好运!
>>
>>
>> 我坚信我活的比党久。
>> 欢迎 Follow @devymex
>>
>
>
再一条,一年可能可以成为Java,Python 等语言的高手,但是永远成不了 C++ 高级程序员
"高级Windows程序员",不知楼主以为和 "C++高级程序员"有什么不同。2010/4/29 Ken <ken....@gmail.com>
忍不住了,楼主分析得很有道理。
1 C++ 语言入门
应该看 C++ Programming Language,个人以为 c++ primer 和此书不在一个档次上。
2 MFC 不应该在这个时候看,第二个阶段应该是SDK入门
做法是抱着MSDN啃
3 C++ 精通
还是 C++ Programming Language,但是得加上 STL, 深度探索C++ Object对象等
4 开始研究 WTL, 模板,设计模式等技术了
MFC 永远都不要看,为什么?
因为MFC设计在90年代,现在语言变化太大了,还要抱着玩具不放么?
2010/4/29 Devymex <dev...@gmail.com>
此学习路线按照由浅到深、循序渐近的过程设计,并考虑了初学者的兴趣所在。必免了一开始就接触复杂的定理和概念,这样可以始初学者在每个阶段都会有满足的 成就感,以便于增强信心,持之以恒。
各阶段的时间是以每天花8小时学习来计算的,如果你每天只能花4小时,则需延长一倍的时间。如果你在 某阶段的学习少于最短时间,要么你是天才,要么就可能没有吃透。而超过最多时间的学习很可能会令你在当前的阶段感到困挠。
1. C++语言入门。可看任一本C++入门书,如果没有C语言基础应先学习C语言的基本语法。重点学习C++新的代码形式,养成良好的编程习惯,熟练掌握内存 的管理技术,了解类的定义和使用方法,较复杂的类继承关系和泛型技术可不看。各部分主题不要过于深入的探索,但熟练掌握此阶段的内容则需一定量的练习(比 如书中各章节后所附的简单的练习题),因各人基础不同需2-4个月。
2. MFC入门。可看《VC++技术内幕》或任一本常见的VC++入门书籍。此阶段要大量练习,熟悉掌握Visual Studio的开发环境,包括代码编辑、编译、调式和查阅MSDN的技巧,可加入http://community.csdn.net论坛参与讨论。熟练 掌握Windows窗体程序的建立和基本编程方法。通过查阅MSDN,了解MFC库中各常用类的功能和基本用法,了解常用Windows API的基本使用方法和Windows的消息机制。关于SDK的深层次内容以及MFC内部实现和设计方法可先不作了解,此阶段需3-6个月。
3. SDK入门。学习脱离MFC,仅依靠SDK编写各种Windows程序界面。可看《Windows高级编程指南》,如能熟练查阅MSDN和利用互联网,可 不必看书。熟练掌握WindowsAPI的调用方法,深入理解消息传递机制,掌握Windows内存管理机制。利用之前所学知识,练习和体会利用C++面 向对象技术对API进行封装的基本方法。若有需要还可使用相应的参考书初步学习数据库、网络编程、多线程编程、GDI+、COM、OpenGL、 DirectX、WDK/DDK等专门编程技术。依所学内容的不同,需3-6个月。
4. C++语言精通,可参看《C++ Primer》,《Think In C++》,《(More) Effective C++》,《Essential、C++》,《C++ STL》等名著,熟练掌握C++泛型编程技术,深入理解类的继承机制,熟悉掌握STL的使用方法。在参考书的指导下阅读STL的内部实现代码,理解其设计 思路,并可利用新学到的技术对上一阶段的内容进行实践。此阶段需2-4个月。
5. MFC和SDK的精通,可看《深入浅出MFC》,《Windows核心编程》。另可选择性概览《设计模式》,《人月神话》,《快速软件开发》,《UML和 模式应用》以便了解当前大型项目的设计和管理模式。综合利用MFC、SDK和C++的面向对象与泛型技术解决实际问题,开发2-3个代码量在2000行以 上的小项目。时间因人而异,需2-4个月。此阶段为入门学习的最后一个阶段,完成后就可以称之为一名高级的Windows程序员了。
6. 如要进行更深层次的学习,应脱离语言和系统,学习专业编程知识或各类算法。如果要走学术型路线,可深入学习各类数学,包括高等微积分、高等代数、数值分 析、数理统计、离散数学等。可参考的计算机专业书籍有《数据结构》、《算法导论》、《现代优化算法》、《模式识别与机器学习》、《人工智能导论》、 《TAOCP》……学海无崖,祝君好运!
我坚信我活的比党久。
欢迎 Follow @devymex
《Essential C++》 也是入門的吧。
比較高級的有《Modern C++》、《C++ Templates》、《Imperfect C++》、《Exceptional
C++》之類。最理想是看一遍C++ ISO Standard...
另外,《现代优化算法》是甚麼?
在 2010年4月29日下午3:23,guihua wu <guihua...@gmail.com> 寫道:
>> 怎么感觉c++primer是很基础的书啊。。。?
>
--
Milo Yip
Twitter @miloyip
http://www.cnblogs.com/miloyip/
http://miloyip.seezone.net/
在 10-5-25,Milo Yip<mil...@gmail.com> 写道:
此学习路线按照由浅到深、循序渐近的过程设计,并考虑了初学者的兴趣所在。必免了一开始就接触复杂的定理和概念,这样可以始初学者在每个阶段都会有满足的成就感,以便于增强信心,持之以恒。
各阶段的时间是以每天花8小时学习来计算的,如果你每天只能花4小时,则需延长一倍的时间。如果你在某阶段的学习少于最短时间,要么你是天才,要么就可能没有吃透。而超过最多时间的学习很可能会令你在当前的阶段感到困挠。
1. C++语言入门。可看任一本C++入门书,如果没有C语言基础应先学习C语言的基本语法。重点学习C++新的代码形式,养成良好的编程习惯,熟练掌握内存的管理技术,了解类的定义和使用方法,较复杂的类继承关系和泛型技术可不看。各部分主题不要过于深入的探索,但熟练掌握此阶段的内容则需一定量的练习(比如书中各章节后所附的简单的练习题),因各人基础不同需2-4个月。
2. MFC入门。可看《VC++技术内幕》或任一本常见的VC++入门书籍。此阶段要大量练习,熟悉掌握Visual Studio的开发环境,包括代码编辑、编译、调式和查阅MSDN的技巧,可加入http://community.csdn.net论坛参与讨论。熟练掌握Windows窗体程序的建立和基本编程方法。通过查阅MSDN,了解MFC库中各常用类的功能和基本用法,了解常用Windows API的基本使用方法和Windows的消息机制。关于SDK的深层次内容以及MFC内部实现和设计方法可先不作了解,此阶段需3-6个月。
3. SDK入门。学习脱离MFC,仅依靠SDK编写各种Windows程序界面。可看《Windows高级编程指南》,如能熟练查阅MSDN和利用互联网,可不必看书。熟练掌握WindowsAPI的调用方法,深入理解消息传递机制,掌握Windows内存管理机制。利用之前所学知识,练习和体会利用C++面向对象技术对API进行封装的基本方法。若有需要还可使用相应的参考书初步学习数据库、网络编程、多线程编程、GDI+、COM、OpenGL、 DirectX、WDK/DDK等专门编程技术。依所学内容的不同,需3-6个月。
4. C++语言精通,可参看《C++ Primer》,《Think In C++》,《(More) Effective C++》,《Essential、C++》,《C++ STL》等名著,熟练掌握C++泛型编程技术,深入理解类的继承机制,熟悉掌握STL的使用方法。在参考书的指导下阅读STL的内部实现代码,理解其设计思路,并可利用新学到的技术对上一阶段的内容进行实践。此阶段需2-4个月。
5. MFC和SDK的精通,可看《深入浅出MFC》,《Windows核心编程》。另可选择性概览《设计模式》,《人月神话》,《快速软件开发》,《UML和模式应用》以便了解当前大型项目的设计和管理模式。综合利用MFC、SDK和C++的面向对象与泛型技术解决实际问题,开发2-3个代码量在2000行以上的小项目。时间因人而异,需2-4个月。此阶段为入门学习的最后一个阶段,完成后就可以称之为一名高级的Windows程序员了。
6. 如要进行更深层次的学习,应脱离语言和系统,学习专业编程知识或各类算法。如果要走学术型路线,可深入学习各类数学,包括高等微积分、高等代数、数值分析、数理统计、离散数学等。可参考的计算机专业书籍有《数据结构》、《算法导论》、《现代优化算法》、《模式识别与机器学习》、《人工智能导论》、《TAOCP》……学海无崖,祝君好运!
我坚信我活的比党久。
欢迎 Follow @devymex