iOS中Lua脚本应用笔记二: 关于Lua在iOS的使用

1. 在App中引入脚本的原因:

如何处理UI变化

如何处理逻辑变化

如何解决数据源不灵活的问题

Objective-C语言的问题是其是编译执行的

2. 为什么选的是Lua

设计目标:嵌入到应用程序中(嵌入式脚本)

体积小:100-200K

最快的脚本语言(非JIT)

API简洁

动态语言

3. 使用Lua开发应用的模式:

A. Lua作为配置文件, 为宿主语言应用提供参数(有点像数据源?);

B. 宿主语言作为底层库,Lua作为逻辑描述。

4. 什么是Lua

Lua属脚本编程语言,于1994年由巴西里约热内卢天主教大学的研究人员设计开发,"Lua"为葡萄牙语单词"月亮"

与PHP、Perl、JavaScript不同,Lua被称为嵌入式脚本语言 , 最著名的应用是在网络游戏《魔兽世界》中

最引入注目的特点:以极小体积和简单的语法提供相对全面的功能;以简洁的API实现与宿主语言最方便的接口。

5. 为什么称为"嵌入式"?

最典型用法,作为一个库,嵌入到其他大型语言(称之为宿主语言)的应用程序之中,为应用程序提供参数配置或逻辑描述等功能,带来前所未有的灵活性。

Lua常见宿主语言有:C/C++, Java, .NET, 甚至其它脚本语言如PHP, Ruby等。

6. Lua工作流程:

Step 1 : 宿主语言建立Lua解释器对象。

Step 2 : 将宿主语言实现的Lua扩展(若有),如函数等,注册到Lua解释器中,供其使用。

Step 3 : 读入Lua source code或者预先编译后的Lua程序(可以从文件、字符串、网络等任意来源)。

Step 4 : 执行读入的Lua程序。

7.  Wax框架及其本身的一些问题

https://github.com/probablycorey/wax/

设计目标:使用Lua开发应用

Objective为Lua提供库

只提供单向的辅助函数: Objective-C -> Lua

只提供一个lua_State

对Wax做了部分修改

其他的一些库:

Lua-Objective-C-Bridge

LuaCocoa

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1 席八是我的前前男友,现在是与我一同挤在民宅公寓里的邻居——这就要扯到我的房东太太了。 她是个爱听粤剧却说不好粤...
    在风阅读 522评论 13 17
  • 古道,炊烟,瓦房 青山饮醉了夕阳 红霞点染了山头 爷爷坐在老槐树下 一杯清茶,一把二胡 把岁月沧桑弹唱 父亲扛着犁...
    LS醉生梦死阅读 208评论 0 0
  • http://blog.csdn.net/renfufei/article/details/49230943htt...
    博瑜阅读 209评论 0 0
  • 今天一大早跟着我们幼儿园去春游了!天气真是好,虽然春天风比较大,但是阳光甚好!跟可爱的孩子们,快乐的同事们,一...
    绽放娜娜阅读 224评论 2 0
  • 一直有这样的梦想 环游世界 不需要很多的人 一个,或两个 不需要很好的条件 帐篷,就足够 旅游,亦或是流浪 还是流...
    木天夕阅读 191评论 0 3