为什么学习lua语言

本来也不打算学习lua语言,但是近期学习openwrt中luci大部分都是由lua语言写的随便看了一下lua的介绍,不看不知道,一看吓一跳,原来lua的应用非常广泛,而且lua解析器非常小可以再嵌入式开发环境中很好的运行,可以与c完美的兼容,因为lua解析器是由c语言编写的。


先巴拉巴拉一下lua是什么吧?

lua是一种轻量小巧的脚本语言,用标准c语言编写并以源代码形式开放,其设计目的是为了嵌入式应用程序中,从而为应用程序提供灵活的扩展和定制功能。lua是由巴西里约热内卢天主教大学里的一个研究小组开发。


lua特性:

轻量级:用c语言编写,编译后仅100多kb,针对嵌入式flash有限是个不错的选择

可扩展性:lua提供了非常易于使用的扩展接口和机制,由宿主语言c或c++提供这些功能,lua可以使用它们,就像是本来就内置的功能一样。

语言机制特性:支持面向过程编程和函数式编程;自动内存管理,提供了一种通用类型的表table,用它可以实现数组,hash,set,object;语言内置模式匹配,闭包,函数也可以看做一个值,提供多线程支持;通过闭包和talbe可以很方便地支持面向对象编程所需要的一些关键机制,比如数据抽象,虚函数,继承和重载。


lua的应用场景

游戏开发,插件开发

独立应用

web应用开发

扩展和数据库插件

安全系统


lua工具:

LuaForWindows,此工具在windows下使用,界面相对友好,安装目录下有相当多的源码例程和lib库。

LuaDevelopmentTools,跨平台工具,支持windows和mac,由eclipse独立出来的一个工具,对于习惯于eclipse的开发人员使用非常顺手。


你可能感兴趣的:(lua语言)