zoukankan      html  css  js  c++  java
  • 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

    大量应用商店使用Lua语言

  • 相关阅读:
    Jenkins Install
    提高C#代码质量的22条准则
    游戏程序员英文指南
    苹果设备内存指南
    Unity符号表
    UI优化策略-UI性能优化技巧
    C# 语言历史版本特性
    CPU SIMD介绍
    Unity渲染性能指标
    关于JMeter线程组中线程数,Ramp-Up Period,循环次数之间的设置概念
  • 原文地址:https://www.cnblogs.com/SnailFish/p/3016570.html
Copyright © 2011-2022 走看看