第884章 程序员为什么要学习开发游戏就是对多线程的理解训练(第4页)
以普通业务程序为例,常见流程是:
一条业务线,单线程完成,易于调试。
但游戏中你必须考虑:
?玩家控制角色同时移动
?敌人ai实时巡逻并感知周围环境
?场景在每一帧刷新渲染
?背景音乐同时播放
?网络消息实时接收与处理
这就是线程或协程的价值。
而每个“游戏对象”
的行为,就像现实中“每个人”
的行为——既受环境影响,也有自我决策能力:
这样的设计会逼你从根本上理解:
?事件驱动模型
?状态管理机制
?cpu时间片调度的意义
?资源竞争与同步锁的应用
?
五、编程最终是思维训练,而游戏最能激发创造力
写业务程序固然可以“工作”
,但写游戏程序更能“创造世界”
。
游戏开发让人跳出“功能思维”
,进入“系统思维”
,再进一步是“创造思维”
。
你会去思考:
?如果我是一名角色,我想怎么行动?
?如果我是一个敌人,我该怎么做出反应?
?如果我是游戏策划,我怎么创造一个好玩的逻辑?
也就是说,编程不再是技术,而是思考的外化过程。
你从游戏开发中,开始理解“思维可编码”
,“世界可建构”
,这就是程序员的终极能力——用逻辑思维创造一个理想世界。
本章未完,点击下一页继续阅读