在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
lua是门新兴的语言,额,其实也不是刚出来,好几年前大家就在学怎么用了。它的出现主要是搭了游戏产业的快车,也多被用来做游戏开发。
关键是,已经连续好几个月,lua的使用频率都在编程语言排行榜上跻身前20了!
先讲讲我知道的一些应用。 首先是在 iOS 下写游戏,《愤怒小鸟》就是用lua写的;同时,也好多用其它语言在为Iphone写游戏的程序员,添加lua到游戏开发中去,让过程更简单。当然,Lua最著名的应用是在暴雪公司的网络游戏《魔兽世界》中----在网上可以找到好多用lua做的wow小工具。 然后是一些小的程序,这个和我的目标一致,一些简单的测试用例可以用lua来写,比如可以在百度找得到的‘康泰串口程序’,还在百度文库发现一篇,有在用lua开发测量仪器上位机测试程序的例子(好处是用c写完一些固定的调用后,用lua简单配置一下,又是另外一个测试程序,写完就可以用)。 还有在嵌入式开发上的应用,在C程序中田间C实现的解释器,程序大小只增加200K!要知道,游戏开发里面,lua是留给不懂程序开发的策划用的,你就能想想,lua往上的开发会是怎样的容易。在思科开源路由器方案中openwrt中,有开发一个叫luci(Unified Configuration Interface)的config接口,暂时不知道里面是怎么用的,但是,它提供的web服务是基于lua。还有,有人讲,busybox也打算开发一个lua版本的。
讲点其它细节。 lua是动态语言,它的解释器现在有用各种主流语言完成的各种版本,c、java...应有尽有。你的程序需要做config吗?lua应该是个不错的选择。或者,找现成的lua解释器过来,你可以再添加好你的库,完全直接执行脚本也行。 lua的解释器最初是用c实现的,lua的开发者说,lua最初是被开发用来做C不擅长的事。 有人把它和python作比较,可能是应用领域的关系,那个家伙讲,他觉得lua会比python好用。在lua的官网可以看到他们吹水记录,不贴连接了。 网上下的某PPT里这么讲,Lua最引人注目的特点:
不过,希望用它干什么‘大事’的可能会有些失望。它的开发者是这么讲的: Lua 没有打算被用来进行大型的程序设计,相反,Lua 定位于中小型程序设计,通常是作为大型系统的一部分,常用于一个或少数程序员开发的情况,甚至是由非程序员进行的开发。所以,Lua 避免了过分的冗余和过多的人为限制。如果你不希望一个对象的内部结构被访问,那么就不要去访问它们。
“以极小的体积和简单 的语法提供相对全面的功能”这句还是很诱惑人的,你可以慢慢去发现它到底提供了哪些“相对全面的功能”。 如果是想学习一门C/C++以外的其它语言玩玩,推荐lua。
好吧,看到有人做的 Lua Template 解释器:https://github.com/henix/slt2。这是要拿来做 WEB 应用的节奏。 |
请发表评论