学学会windows程序设计计怎么样,有前途吗

16598人阅读
Windows开发(11)
有很多初入门的小朋友跟我说,他们想学“底层”的技术,因为觉得技术含量高,所以想学Windows C++开发,看着调用一个个的参数超级多,调用起来超级麻烦的Windows API,觉着很酷。于是我念头一转,就有了这篇文章,根据我多年来做Windows 客户端的经验,跟大家谈谈Windows C++,该从哪一方面入手,这不会是一个有技术深度的文章,只是偶尔会涉及到一些术语以及一些入门书籍而已,对于Windows开发的老鸟们来说,只当是看着好玩了。
首先来谈谈最初的Windows开发。
如果打开《Windows程序设计》这本书,关于Windows开发的来龙去脉就一目了然了。但是要注意,《Windows程序设计》是一本纯讲述Windows API的书,确切的说,这本书主要讲的是关于Windows 用户态的API,也就是User32.dll GDI32.dll这两个库文件中的函数,大部分的内容都是关于Windows最基本的窗口元素的操控方面的API,比如创建窗口,绘制窗口,关闭窗口,消息循环等等。这本书不需要你有C++方面的知识,理论上说只要你有C语言的基础就可以看懂,但是如果你连C语言的基础也没有,看这本书可能会发生一些困难,如果你学过其它一门非面向对象的语言,这本书实际上也能够勉强看懂。我在大学的时候就看了这本书,但是直到现在也没有看完,书中的某些知识,实际上在Windows开发中已经很少用到了,我个人认为是没有必要把这本书从头到位看一遍的,在看了前面几章以后,我就蠢蠢欲动,写了一些简单的程序,迅速巩固了关于这些API调用的记忆,为今后进化到Windows
C++阶段打下了一个良好的基础。所以,写程序是很重要的,这个阶段,我建议大家写一些简单的程序,比如打字测速程序,自己创建一个消息循环,创建一个窗口,创建一个光标,用GDI函数输出图形及文字,这样下来,基本的Windows程序设计概念就有了,不过注意写的时候不要大段的Copy书上的代码,全部自己写,否则无助于理解各个API的含义,这个程序,因为是自己写的第一个Windows程序,所以时间限定在一个月到一个半月之内比较合适。度过这个阶段以后,Windows编程的基本概念就应该在你脑海中形成了。
下面进入第二个阶段,也就是C++风格的Windows开发,也就是职场上需求量很大的Windows C++程序员干的事。
这时候你需要了解一下这个老掉牙的叫做MFC的东西,MFC是啥呢,其实是一个很原始的,用代码来拼搭界面的C++库,当然,因为是C++库,所以你必须具备了一定的C++知识。不过别因为原始就小巧了它,MFC比传统的Windows SDK开发方式还是要前进了一大步的,因为不管怎么说,它总算沾了面向对象的一点边,有那么一点点面向对象的意思了,比如一个窗口,会被封装成CWnd类,里面有创建窗口的成员函数,窗口绘制的函数也被封装了进去,CWnd又会有其它的窗口派生类,比如CView啊CFrameWnd以及各类窗口控件。学了MFC,你就基本上对Windows
C++开发入门了,换而言之,如果你学的还算过关的话,应该能在市场上淘到一份关于Windows C++开发的工作了。其实现在很多公司还在使用MFC这个老黄牛,虽然MFC跟现在流行的界面库的易用程度比实在是差的太远,但是MFC的界面效率高,细节操控丰富这仍然是不争的事实。
在这个阶段上,你可以做一些简单的稍微上得了台面的程序了,比如开发一个基于IE内核的浏览器,之所以我让你开发这个程序,是因为开发IE相关的程序能学到很多跟COM有关的知识,COM也同样是Windows客户端开发人员的必备技能,它的生命力跟MFC一样的顽强,甚至有过之而无不及。
这个阶段上,如果你对MFC足够熟悉了,还可以接触一下WTL这个轻量级的模板界面库,其实如果有了MFC的基础,WTL的学习过程是很愉快的,很多MFC中的概念,比如消息映射,在WTL中都有对应的东西,WTL更小巧,封装的更高端(模板库嘛),但是微软官方不支持,所以不像MFC在MSDN上有专门的文档。最重要的是,WTL和ATL可以结合的非常好,这样就使得在WTL上调用ATL写的COM组件或是在ATL写的COM组件中调用WTL的窗口变的简单轻松,所以,以我现在的脾气,是更加推荐大家使用WTL而非MFC的,但是毫无疑问的,WTL的学习成本更高,所以仁者见仁智者见智啦。
接下来就该学习COM了,学习COM嘛,几本关于COM的基础理论书籍还是要看的,比如《COM技术内幕》这个本书我比较推荐,比较浅显,适合COM的初学者,另外潘爱民的《COM原理与应用》我也看过,马马虎虎也还算过得去吧,虽然感觉还是前面那本更好一点。至于那本神乎其神的《COM本质论》,我觉得不看也罢,那本书初看的时候没看几页就走神,实在是晦涩,素我直言,《COM本质论》这本书,如果你没有好的C++基础还是别看了,纯粹给自己添堵。
等到有了COM的基础概念了,就可以看看《深入解析ATL》,ATL就是用来写COM的,虽然它也封装了一些窗口,控件,不过这本书稍微写的深了一点,大段的代码剖析,初学者看起来还是有难度的,我当初很多地方都是强迫自己看完的,看完了后,收获还是不小的。
在你有了一定的Windows程序开发经验之后,可以看《Windows核心编程》,这本书讲的都是关于Windows内核方面的东西,比如进程啦,内核对象啦,线程啦,DLL啦,SEH啦,总之我的看法,这本书与《Windows程序设计》遥相呼应,弥补了前者的不足,大篇幅的讲述了Kernel32.dll里面的函数,这本书很多内容我都通读了好几遍,某个国内排名前三的互联网公司面试,面试官的很多问题都是这本书里的东西,所以强烈建议大家把这本书好好学习一下。
总结了一下,看书是很重要的,但是不要忘了写代码,我得感觉,看书的时间和写代码的时间在三七开是比较好的,战争中学习战争,实践出真知,这才是最重要的。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:78527次
积分:1219
积分:1219
排名:千里之外
原创:35篇
评论:63条
(2)(1)(2)(1)(4)(1)(1)(1)(1)(1)(1)(2)(6)(1)(2)(1)(1)(1)(1)(1)(2)(3)(1)学习Windows编程的几本好书
当前位置:
学习Windows编程的几本好书
学习Windows编程的几本好书
&&& 学习任何一门知识,都需要相关的数籍,尤其是计算机技术。这里的书籍包括电子书和印刷书籍。对于初学者,最大的痛苦就在于找不到合适的书籍。目前,国内关于计算机类的书籍多如牛毛,几乎任何一个关键字都能找到相应的书名。但是,真正能适合读者学习的却不是很多。技术书籍无非两类,一类偏重于应用,一类偏重于原理。对于我自己而言,我喜欢先看应用的书籍,然后再看原理的书籍。当然,我偏爱原理的书籍,因为它能给你一种解渴的感觉。今天,为了以后自己查阅方便和不至于迷茫与众多的书籍之间,记录下Windows编程相关的书籍,这些书籍都曾对我起到决定性的作用。1 应用类数籍& (1)VC++6.0时尚编程百例。 尽管这本书错误很多,但它确实是引起Windows编程兴趣的不错的入门书籍。只要照着例子做,就能马上看到效果,不可谓不激动人心。& (2)Visual C# 2005经典入门,Visual Basic 2005经典入门。可以立刻进入.net编程的大门。2 原理类书籍& (1)深入浅出MFC。 侯捷的书,对于理解MFC的运行原理讲解的很透彻,如果想在MFC上进行开发,此书必备。& (2)Windows核心编程,英文名:Windows via c/c++。讲解Windows操作系统运行原理,包括UNICODE, 进程、线程,虚拟内存,动态链接库,结构化异常处理。在Win32API平台做开发的圣经。对于理解Windows 操作系统很有好处。& (3)微软.net框架程序设计,英文名CLI via C#。讲解.net运行原理的经典书籍。作者与(2)相同。要想弄懂CLI到底如何动作,此书必备。& (4)COM原理与应用,在Windows上做开发,不懂COM肯定不是高手,这本讲解COM的书籍出自潘爱民,确实不错。& (5)COM本质论,COM原理的深入。要想精通COM,必须阅读之。
最热点击文章
最新代码下载
最新杂志下载2015年2月 Java大版内专家分月排行榜第二2014年3月 Java大版内专家分月排行榜第二
2014年9月 Java大版内专家分月排行榜第三2014年6月 Java大版内专家分月排行榜第三2014年2月 Java大版内专家分月排行榜第三2013年11月 Java大版内专家分月排行榜第三2013年10月 Java大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。}

我要回帖

更多关于 windows程序设计第6版 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信