博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
我对编程语言选择的理解
阅读量:6984 次
发布时间:2019-06-27

本文共 903 字,大约阅读时间需要 3 分钟。

日志的由来

上午在公司的时候询问同事,公司的服务端语言为什么是Lua,而不是Java?(注:我学的是Java)

对于这一讨论,就谈到了根据项目需求、类型来选择编程语言;也聊了下服务端编程与客户端编程有些小差异 ……

情景再现

我问同事例如:要实现对一幅打乱的54张扑克牌排序,然后按照花色及大小输出,或是对于打牌中的发牌处理,拿Lua,或是JavaScript和Java比对实现起来的难易程度;再或者是一个很小的RPG游戏:游戏中有主角,敌人,主角攻击敌人升级闯关;使用Lua和Java实现起来的难易程度。

我的想法:使用Java会很好的实现,因为面向对象思想,把敌人和主角都当作人类[基类],敌人与主角都是对象……

如果使用Lua或是JavaScript我还真不知道如何去实现,因为在这两种语言中没有对象的说法,也没有基类一说,所以我不知道如何设计。

他回答我:对于卡牌游戏,使用面向对象编程反而会很复杂,因为它的逻辑很简单。

我的思考

和他的谈话之后我思考,要根据游戏类型和逻辑不同,考虑选择不同的编程语言和编程思想,面向对象思想也并不是对所有的开发都是最佳选择。

对于公司的卡牌游戏的开发,服务端语言的选择使用Lua会更合适些,卡牌游戏的逻辑没相对来说没有很难很复杂,不同的东西之间的关联也并没有很复杂,所以没必要使用Java开发,而且对于性能上来说,这种类型的游戏使用Java开发代价也更高。

Lua和Java的区别

再谈到Lua和Java的区别,他的感受是Lua使用起来很顺,灵活,没有Java那么严谨,也没有像使用Java框架一样有很多约束 。

再谈到为什么不使用一些现有的框架来开发游戏,他觉得如果使用框架开发的话,那么有很多的条条框框,对于大型的项目及大的团队合作,那么有必要,卡牌游戏就没有必要使用,团队小,使用框架反而会减慢开发速度。

程序员生涯

对于程序员的生涯,我还在进步和发展, 重要的是掌握编程思想,而不是局限于某 种编程语言。

2013-09-07 写于 达人网络

转载于:https://www.cnblogs.com/zhaoqingqing/p/3307307.html

你可能感兴趣的文章
用 Hasor 谈一谈MVC设计模式
查看>>
IE 条件注释
查看>>
Windows热键注册(反汇编方法 查看win32api 原理)
查看>>
UNREFERENCED_PARAMETER的作用
查看>>
PHP计算表达式-栈
查看>>
IBATIS中关于iterate"$"与"#"的应用
查看>>
为什么要将对象序列化
查看>>
新增网址/网页 截图api[增加安全防护本接口已停用]源码可下载
查看>>
SpringMVC+Hibernate +MySql+ EasyUI实现POI导出Excel(二)
查看>>
刷leetcode第705题- 设计哈希集合
查看>>
dubbo协议参考
查看>>
SpringAOP拦截Controller,Service实现日志管理(自定义注解的方式)
查看>>
读《白帽子讲Web安全》之安全意识篇(一)
查看>>
GLSL三种修饰符区别与用途(uniform,attribute和varying)
查看>>
python django django-debug-toolbar 加载缓慢,不能使用。
查看>>
操作系之进程调度及算法详解
查看>>
PHPexcel实列
查看>>
Butterknife 的简单使用 和 配合 Butterknife的插件 Zelezny
查看>>
Magento利用input type=”file”上传图片
查看>>
Android音频开发(4):如何存储和解析wav文件
查看>>