iOS中Lua脚本应用笔记二: 关于Lua在iOS的使用
2013-04-12 14:10
295 查看
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
大量应用商店使用Lua语言
如何处理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
大量应用商店使用Lua语言
相关文章推荐
- iOS中Lua脚本应用笔记一:脚本概念相关
- 【iOS-cocos2d-X 游戏开发之八】使用Lua脚本进行游戏开发(基础篇) 推荐
- iOS应用笔记之git的本地使用
- 关于【2017 年1月1日开始iOS应用内必须使用https的问题】
- iOS 中 Lua 脚本的应用
- 【慕课笔记】4-6 应用DOM4J及JDOM方式解析XML—关于JDOM使用过程中JAR包的引用
- Xcode学习笔记---如何使用Xcode中的storyboard构建你的第一个IOS应用
- 笔记:Linux环境下lua脚本层使用protobuf
- ios开发笔记--关于delegate(委托)的使用心得
- lua学习笔记 3 android调用Lua。Lua脚本使用LoadLib回调Java,并传多个参数
- iOS 中 Lua 脚本的应用
- 使用iosMonkey脚本测试iOS应用的稳…
- 使用Ynm3k的iosMonkey脚本测试iOS应用的稳定性
- LUA笔记(3)-- 关于lua的使用
- Cocos2dx学习笔记34 使用tolua++编译pkg,从而创建自定义类让Lua脚本使用
- lua学习笔记 3 android调用Lua。Lua脚本使用LoadLib回调Java,并传多个参数
- 使用脚本一键打包iOS应用ipa和上传到ftp服务器
- iOS学习笔记52-iOS 关于TestFlight的使用
- ios学习笔记:关于Quartz2D使用(矩阵操作)
- 关于引入pods的iOS项目使用shell脚本编译的问题与探索