我就是这样一个与众不同的老顽固。最近所有由我单独完成的游戏项目完完全全都是用C写的。肯定没人这样干过,所以我觉得这值得我解释下为什么我要这样做。

枯燥的编程语言观点要来啦!嗯,我已经警告过你们了。

从一种语言中我们所需要的

有些事是毋庸置疑的。首先,它必须是可信任的。我不能花费我的时间去解决那些不是我导致的bug。以前许多游戏都是用flash来编写的,然而现在flash正在面向灭亡。我也不想花费不必要的时间将老游戏移植到新的平台,我想要的是制作新的游戏。因此我需要一个在一段时间内都能自信使用的平台。同样,我想要避免自己被一个特定的操作系统捆绑。理想状况下我喜欢我可以有发展控制台的选项。所以选择一种编程语言最重要的是它是可移植的,并且有可移植式库的支持。

从一种语言中我们所想的

我所追求的最重要的,但不是必要的一件事就是其简单性。我发现查找语言的特性和它所具备的聪明古怪的API是一件及其累人的事!理想的语言是-这些东西都可以被记住,而无需去查找它们。另外,处理那些bug绝对会使你的创造性流失。所以我想要一个强类型的、强大的错误提示以及静态代码分析来减少bug的出现。我还想要一个好的debugger和动态分析来使我更容易发现bug。我不关心性能是否强大,但至少可以用。如果你不追求逼真的话它可用现代、功能强大的电脑尽情探索其可能性。

我甚至会关心编译器的速度问题。我不是可以非常专注的禅师,手机靓号出售等待超过十秒对于我来说是一种浪费,但更重要的是这会打破我思考的节奏。

我不追求面向对象(OOP)。我已经花了太多时间在管理类和对象上面,但我发现花了更多的时间,却不太明白为什么要把代码和数据严格的结合起来。我想要处理数据并且编写适合特定情况的代码。

备选方案

C++ 仍然是编写游戏最普遍的语言,没有原因。我用它写了很多项目,但其实我非常不喜欢它。

C++ 涵盖了我所需要的,但却没有满足我想要的。它实在太复杂了!尽管一些工具相当好,但它还是十分容易出现bug。和C相比C++编译速度很慢。但即使它具备高性能并且有C所没有的一些特性,但我并不在意这些有的没的。

C# 和 Java 有些通病。它们都是冗长复杂的怪兽,我所需要的是简单简洁的东西。 它们都迫使程序员去思考面向对象编程的风格,这通通都是我反对的。作为一个高级语言,它们应该有隐藏其复杂性的趋势。

相比我更喜欢Go。在许多方面它是C的再发展,我会选择使用Go,但是它也有个很大问题阻止我使用它。使用stop-the-world的方法来实现垃圾回收算法对于游戏是件再烦人不过的事情。游戏库的支持也是有点弱,虽然你可以使用C库,但这会增加更多的工作量。这足够让我怀疑它长期的实用性。虽然它很好的服务于web,同时这具备了一个可怕的快速移动环境的性质。这可有点flash灭亡的意思。然后我想说我真的真的不喜欢javascript,它是如此的松散模糊,我特别讶异居然有人能够在软件中使用它写上一大块。我简直没有一丁点兴趣尝试它。

Haxe 感觉上比其他语言更有前景。如果我还做些和web有关的东西的话我会选择它。它有很好的库支持。我就有点担心它不太成熟,能不能长久的问题。好了,我也没什么要说的了。

Jonathan Blow正在编写他自己的语言,一种他自己想用的语言。我特别羡慕,有时候我也会考虑做这件事。但想想,需要丢弃所有现有的库支持和承担未来兼容性的责任以至于太对需考虑。并且这实在太困难了,当本质问题于此,我宁愿去做游戏好了。

为什么C是我的最佳选择

C既危险又可靠。 就像一把锋利的刀,切手指和切蔬菜一样,但学会小心的使用它也不会太难。

它编译的时候特别快,我无法想像有什么比它更快。

它还可以在任何地方运行,通常较为容易。我都想不到它什么时候不能像这样工作。

库和工具支持又强大又不间断地更新。

我要很悲壮的告诉你们,这就是我的语言。

我绝对不会说“嘿,你也应该使C”我完全赞每个人有不同的个人偏好和特别的习惯。只想说相比用其他语言来说我已经编写了很多C 代码,并且这令我很舒服。哦好吧,就这样。

为什么我要用C写游戏 适合自己的才是最好的相关推荐

  1. C++适合游戏开发,那用C++写游戏有什么优缺点?你知道吗?

    我们都知道C/C++编程语言他对于游戏方面的应用非常的强大,像王者荣耀,英雄联盟的游戏后台服务器都和我们的C++密切相关,那么,用这样的编程语言来写游戏代码的话,会有什么样的优点和缺点呢?我们一起来看 ...

  2. 用Python和Pygame写游戏-从入门到精通(1)

    From: http://eyehere.net/2011/python-pygame-novice-professional-1/ 博客刚开,打算做一个Pygame的系列,翻译自Will McGug ...

  3. python编程语言可以做游戏吗_python合不合适用来写游戏

    python合不合适用来写游戏 发布时间:2020-07-03 11:10:00 来源:亿速云 阅读:73 作者:清晨 这篇文章主要介绍python合不合适用来写游戏,文中示例代码介绍的非常详细,具有 ...

  4. 用Python和Pygame写游戏-从入门到精通

    博客刚开,打算做一个Pygame的系列,翻译自Will McGugan的<Beginning Game Development with Python and Pygame –From Novi ...

  5. c语言派对游戏,适合5,6人聚会玩的游戏

    适合5,6人聚会玩的游戏 导语:5,6人聚会时玩什么游戏好呢?下面就由jy135小编给大家带来一些适合5,6人聚会玩的游戏,希望大家喜欢. 适合5,6人聚会玩的游戏 适合5,6人聚会玩的游戏--喝水传 ...

  6. 知乎轮子哥有多牛!初中写游戏,大学写编译器,毕业拿微软Offer

    点击"技术领导力"关注∆  每天早上8:30推送 作者:vczh 来源:https://dwz.cn/sWwZoQEl vczh,本名陈梓瀚,因知乎的个人信息介绍上写有" ...

  7. 在写游戏时钟类时,应确保时钟的计算是以某个固定的CPU为标准的

    在写游戏时钟类时,应确保时钟的计算是以某个固定的CPU为标准的.下面通过一个例子来阐述如何实现这一思想: // 记录特定进程的affinity maskunsigned long lProcessAf ...

  8. 用python写数字_用python 写游戏之数字华容道

    当初对这个游戏颇有印象还是在最强大脑节目上面,何猷君以几十秒就完成了这个游戏.写2048游戏的时候,又想起了这个游戏,想着来研究一下. 游戏玩法 用尽量少的步数,尽量短的时间,将棋盘上的数字方块,按照 ...

  9. python写好的代码怎么给别人使用-10分钟学会用python写游戏!Python其实很简单!...

    原标题:10分钟学会用python写游戏!Python其实很简单! Python现在非常火,语法简单而且功能强大,很多同学都想学Python!所以在这里给各位看官们准备了高价值Python学习视频教程 ...

最新文章

  1. JavaScript公共运行库
  2. [Swift通天遁地]七、数据与安全-(12)使用Instruments Leaks工具检测内存泄露
  3. flowable springboot 集成 flowableDMN_05
  4. 【SpringBoot 2】(一)基础知识了解学习
  5. 基于Java+SpringMvc+vue+element实现驾校管理系统详细设计
  6. 网页Loading,让页面加载完再显示
  7. pomelo的session
  8. Win-MASM64汇编语言-标志寄存器(EFLAGS/PSW/PUSHF/POPF)
  9. Android:adb 详细介绍
  10. [渝粤教育] 中国地质大学 运筹学1 复习题
  11. C++ Iostreams 用法详解(二)标准输入输出
  12. web 前端(轮番插件)
  13. MySQL数据库安装超级详细教程
  14. typora导出pdf文件缺失
  15. PRML读书笔记 第十一章 采样方法(1)
  16. 空间句法高阶技能sDNA
  17. 加菲猫经典语录(二十二条,中英文对照)
  18. 冶金物理化学复习 --- 湿法分离提纯过程
  19. JavaScript常见设计模式
  20. 酷盘 文件服务器,酷盘网页登陆

热门文章

  1. java工程师考试题目_成功拿到Offer,Java工程师笔试题及答案!
  2. 机器学习:从感知机模型体会随机梯度下降
  3. leetcode-6-Z 字形变换
  4. codeforces 739E - Gosha is hunting
  5. [Linux] Vmware 15安装CentOs后显示网络不可用
  6. 牛客网——华为机试(题15:求int型正整数在内存中存储时1的个数)(Java)
  7. 用jQuery设置多个css样式
  8. 2-10日偶听某箴言
  9. QT | QT MSVC 2015 + VS 2015开发环境配置及GIT设置
  10. openjudge-NOI 2.6-1759 最长上升子序列