首页 新闻 会员 周边

想学Windows编程,准确来说我是想学WindowsAPI编程,有C/C++基础,请各位大神推荐一下适合初学者的书籍。

0
悬赏园豆:50 [已解决问题] 解决于 2019-09-26 14:06

想学Windows编程,准确来说我是想学WindowsAPI编程,有C/C++基础,请各位大神推荐一下适合初学者的书籍。

风之落叶815的主页 风之落叶815 | 初学一级 | 园豆:157
提问于:2019-09-25 01:02
< >
分享
最佳答案
0

1,Windows编程,建议C#,不建议C和C++。
2,学习C#,网上找视频看,传智播客教学视频不错,网上有免费资源。
3,前期不建议看书,因为看书很枯燥,国外的书写的太深奥,国内的书写的太浅薄,都不适合新手。

收获园豆:50
zch半缘修道半缘君 | 菜鸟二级 |园豆:256 | 2019-09-25 11:10

谢谢你的建议,其实我自己也明白,现在学C#才是较好的选择。但是,我还是想用C直接调用WinAPI,做一些系统层的东西,所以我这个要求大概就是看《Windows程序设计》和《Windows核心编程》这两本书了吧,现在是Win10了,请问这两本书过时不

风之落叶815 | 园豆:157 (初学一级) | 2019-09-25 14:04
其他回答(1)
0

不过时,就那样。你是对的,应该了解一下基本“原理”(此处姑且打上引号吧,winForm、WPF等你将更难了解到这些东西),这对于你后面解决问题的会更有帮助,思路方法将比WPF、winForm入手的更地道。我的经历就是这样的 —— 第一份工作是做MFC,然后你再看winForm的时候会根本性的进步,至于WPF那些个只会做做绑定的不晓原理的,遇到问题就更扯蛋了。

真实案例:曾经面试,有个做了很多年WPF的人,很嚣张,我基本没怎么做过WPF,可以说三下五除二让他无语 —— 他竟然以为能做个显示各种信息的控件多牛逼的样子。而这只是Win编程入门而已,当然稍微有点时间的编程人员都不会认为这是个问题。

再比如Handle,这在win中也是个重要的概念,你如果从c#入手,新手基本上只有懵逼。

至于消息队列、视窗管理...很多基本的东西,到达c#就消失了,而在很多时候确实很有用。

总而言之 知晓一些实现原理是非常有助于扩宽思路解决问题的。

再给个对“视图”(用户交互界面框架或者叫类库也可以)加深理解的建议:

可以试试用DX(或者XNA——现在只有MonoGame了)实现一个简易的游戏引擎。

再回归这种普通UI,你可以看看之间的联系和区别,比如为什么winForm、WPF是p-Invoke的模式等等。

当下流行的视图设计模式基本上 更多偏向Html或者xmal模式的现成 布局模式,而非传统像素点,在Win10炒作的UWP也都差不多,只要懂一点,上手都是很容易的。至于Win10的设计,还是得看官方说明 —— 比如高清屏的支持,DC前植入和Android类似的虚拟像素点的概念等等(游戏试图实际上一早就是这样)。

花飘水流兮 | 园豆:13560 (专家六级) | 2019-09-25 20:28

膜拜大佬,其实我是看到B站上有个人用C++通过API直接向游戏进程直接写内存,觉得挺高大上的,所以也想了解一下WinAPI.

支持(0) 反对(0) 风之落叶815 | 园豆:157 (初学一级) | 2019-09-25 20:46
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册