• 欢迎访问安全专题网站,安全专题信息,安全专题教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入安全专题 QQ群
  • 安全专题现已支持滚动公告栏功能,兼容其他浏览器,看到的就是咯,在后台最新消息那里用li标签添加即可。
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏安全专题吧

windows上开发大型游戏,也不过这六步

安全技术 aqzt 2年前 (2016-12-18) 253次浏览 0个评论

windows 上开发大型游戏,也不过这六步

大家知道现在 PC 市场上,Windows、Linux、Mac 基本占了百分之九十多,而在个人用户 PC 市场,Windows 应用在目前的 PC 市场还是占据了绝大多数,根据 StatCounter 和 Net Applications 两家机构的最新统计,Windows 系统仍然占据 90%以上,因此在 Windows 上或者在 Windows 环境下开发应用程序还是非常普遍的。及时是 Linux 下开发软件的同时,也有不少人是在 Windows 环境下开发,所用工具也很多都是 Windows 平台的软件。

另外,很多朋友学了 C 语言,发现编写的都是黑洞洞的命令行程序,现在的电脑里,窗口程序已经成为“高大上”的一个标准之一了,只有一些系统服务,系统命令工具还保持控制台风格,那要编写 Windows 下的窗口程序在怎么学习呢?

windows 上开发大型游戏,也不过这六步

从广义上说只要运行在 Windows 下的窗口程序都可以作为目标,但是微软还是搞了好几种编程语言都可以编写 Windows 窗口程序,比如 C/C++、C#、VB;甚至还是非微软系列的,比如 C++ builder 等等,但是不管这些表面怎么不同,始终是长在 Windows 这个平台上,那么 Win32 相关 API 始终都是最后的那个调用。因此在 Windows 下要学习窗口程序编写,一定离不开 Windows API 的使用,由于 C#、VB 已经把窗口程序作为其必备的部分,也就不再考虑这个问题,我们今天的目标就是带领广大初学者如何用 C/C++来学习编写 Windows 下的窗口程序,已经熟悉的或者高手们直接略过。

考虑到本篇文章是为初学者或者有一定 C 语言基础的朋友准备的,所以我按照学习的步骤来讲怎么编写 Windows 程序,有会的部分可以跳过进入下一部分。

一,安装窗口编译环境

要开始 Windows 编程,我们需要安装一个开发环境,我推荐你在 VS 下编写窗口程序,版本不是最重要的,不管是 VS2013、VS2010、VS2008、哪怕是 VS2005,甚至是 VC 都不是关键,也不是越新越好,最好跟你的 Windows 系统版本匹配。这里我们不讨论具体某个最新特性,而是常规的窗口程序编写,因为一些特性是对版本有要求的。比如我现在用的是 VS2008,这个版本虽然不新,但是他的大小差不多,包括 MSDN 一起安装下来 4G 左右,关键的是这个版本还可以开发很多市面上支持的 WinCE 开发板嵌入式程序。

二,安装帮助文档 MSDN

虽然这个不是必须,但为了后面的编程方便,我强烈建议你安装 MSDN,这个基本成了编写 Windows 程序编写的标配了,有了这个东西,那些 API 函数的用法,很多实例代码和说明上面都能找到。它不只是有编写 Win32 的指导,好包括 MFC、C#、VB、COM、DirectX 等 Windows 下各种编程的说明文档,所以只要你是在 Windows 环境下开发,都有很多值得参考的编程技术指导。

windows 上开发大型游戏,也不过这六步

三,C/C++语言编程

要用 C/C++语言开发 Windows 的程序,C/C++语言是基础。学习 C/C++语言的学习资料和方法网上到处都有,教程也是多如牛毛,各有各的理解和喜好,至于什么书好,自己去查,我也不想在这里被拍砖,但至少 C/C++语言常用语法和知识点都应该知道,能用 C 语言编写一些基本程序,知道如何调用第三方的 API。要准备开发 Windows 程序,我建议学习 C/C++语言就在上面安装的 VS 环境下进行。虽然学习 C/C++语言有其他一些开发环境可以选择,比如 code block、eclipse 等等,要单学习 C/C++语言是没有问题的,但是计划要在 Windows 下开发,还是 VS 比较主流。有了一些基础也可以边学 Windows 相关知识,一边锻炼 C/C++语言。当有了这些基本知识,我们就可以进入下一步的 Windows 开发学习了。

四,了解 Windows 编程

这里不涉及 C#和 VB 这种其他语言的 Windows 下的应用,而是特指 C/C++编写。编写 Windows 程序一般有两种,一种是 MFC;一种是 Win32 编程,一般这种就是通常所说的 Windows 编程,它跟 Windows 下编程不是一个概念。MFC 全称是微软基础类库(Microsoft Foundation Classes),它是微软公司将 Windows 的那些常用的 API 函数封装成了相关的类,比如典型的窗口类就封装了窗口的管理的各种方法和熟悉,各种控件都有窗口类派生出来。MFC 模式编程基本上都是使用 C++,这个要求你有一定的 C++基础。Win32 编程是 Windows 最“原始”的编程模式,只要有 C 语言基础就可以,这种编程模式就是采用 C 语言+Windows API 调用的方式,MFC 那些类封装的成员函数,最后也都是调用了 Windows 的 API 接口。这种编程方式由于比 MFC 更直接,编出来的应用程序要小不少,效率相对更高,调试和运行过程更容易理解,尤其是对那些 C++学得不太好的同学更容易接受。有些变态功能用 MFC 相当不好实现,但是用 Win32 就不存在这些限制,“副作用”就是要求你更了解 Windows 方面系统 API,具体哪种适合您,请自己选择。BTW,国外的大牛们一般都用 Win32 方式!

windows 上开发大型游戏,也不过这六步

五,窗口交互界面

对于不太熟悉 Windows 窗口编程的菜鸟,也许目前还不了解要学 Windows 哪些东西呢?鼠标操作?玩游戏?开玩笑了,肯定不是。Windows 编程可以分为两部分,第一部分就是 Windows 下的交互界面编程,对于没有真正理解 Windows 编程的人来说,这部分可能就是所谓的 Windows 编程了;另外一部分就是深入理解 Windows 的运行机制、内存管理和核心对象。下面就是第一部分主要的学习内容:

框架——Windows 是一个消息驱动的系统,它包括基本消息循环框架、各种消息产生和处理、传递关系。

窗口——这个部分包括各种窗口的管理,比如创建、销毁、背景、移动、重绘、透明处理等。

控件——这个部分包括 Windows 窗口上的各种控件的使用和管理。

GDI——这个部分包括用于绘制的各种 GDI 对象,比如字体、位图、画刷、画笔、区域、路径等。

外设——这个部分包括鼠标、键盘、打印机等、串/并口。

六,Windows 编程提高

这一部分要学习的内容就是上面说到的第二部分,它是 Windows 的精髓,但是也不容易理解,体现了 Windows 的内部运行机制,作为高级 Windows 开发必须学习,一个复杂的 Windows 应用或多或少都会应用到这些部分或全部。下面列出了主要的学习内容:

内核对象——包括进程、线程、调度、同步操作的相关知识。

内存管理——包括 Windows 系统的虚拟内存管理、地址空间、内存映射等。

动态链接库——包括动态库原理、创建和相关高级应用。

异常处理——包括结构化异常处理、异常链、错误与恢复。

如果对编程感兴趣,想了解更多的编程知识,解决编程问题,以及入门指导,帮你解决编程中遇到的困惑,我们这里有 java 高手,C++/C 高手,windows/Linux 高手,android/ios 高手,请大家关注微信公众号:程序员互动联盟或者 coder_online

本文属原创,禁止转载,谢谢


Selinux 中国 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:windows 上开发大型游戏,也不过这六步
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址