初识Lua

作者: AZander | 来源:发表于2020-11-02 18:54 被阅读0次

Lua介绍

其他

学习

阅读

工具

总结

基础的机制与原理

lua的理解

  • lua 只有一种通用数据结构 table
  • 由于 lua 的数据结构很简单,所以我们可以认为沙盒中放着一张只有 function 和 table 两种复杂数据类型构成的图。

lua 代码结构及部分理解

文件

  • 全局
    • 全局变量
    • 全局方法
  • 本地(local定义的本地变量和方法)
    • 本地变量
    • 本地方法
    • 本地变量-表
      • 表的实例方法
      • 表的类方法
    • return 外部要用到的变量
  • 数组 = 表
  • 字典 = 表
  • 对象 = 表
  • 类 = 对象 (没有类的概念只有对象(表),具有clone自身的对象可以看做类)

Lua问题

  • lua是编译型还是解释型 :解释型
  • 怎么理解local BaseApplication = require "VersionController" (VersionController.lua)
  • :和. 分别代表什么意思?前者实例方法可以调用Self,后者静态方法没有Self隐式变量
    :如 Application:init_app
  • Lua 作用域
  • 如下代码
  • VersionController.lua

技术点

动态更新
  • 冷更
    • 更新时机:重新进入应用或者插件才会更新
    • 具体方法
      • 预建设
        • 建一个 app版本和脚本版本映射的关系表。
        • 脚本版本,如 3.2.1 (主版本号.子版本号.补丁版本号)
      • 更新
        • 进入应用时检查脚本是否有更新,有更新下载最新脚本,实现动态更新。
  • 热更

    • 更新时机:应用和插件运行期间也可以更新
    • 具体方法
      • 预建设(同冷更)
      • 目标:针对应用版本和本地脚本的版本需要更新的
      • 更新
        • 更新时机
          • 1、合适时机如应用启动端上请求是否更新;2、服务端通知客户端更新
        • 实现,下载更新脚本,修改内存中已经加载过的对象
  • 热更的实现@如何实现,有待验证

与c++相互通信
移动端使用的安全隐患
继承和多继承的实现

阅读

Lua集成和使用

  • 1、下载lua源码:download source code

  • 2、打开src目录,将Makefile、lua.c、luac.c三个文件删除掉(src文件夹下为Lua的源码文件)重命名src为"lua版本号",如lua5.3.5。

  • 3、将lua5.3.5文件直接拖拽到xcode中。

  • 4、编译会报如下错误。
    'system' is unavailable: not available on iOS

    #if defined(__APPLE__)
        #include "TargetConditionals.h"
        #if TARGET_OS_IOS || TARGET_OS_WATCH || TARGET_OS_TV
        #define system(s) ((s)==NULL ? 0 : -1)
        #endif // end iOS
    #elif defined(__ANDROID__)
    
        #define system(s) ((s)==NULL ? 0 : -1)
    #endif
    

    参考:http://lua-users.org/lists/lua-l/2017-09/msg00242.html

    - String 表示一个不可变的字节序列。?

开发工具

  • ideal
  • android studio
  • xcode
  • subline

相关文章

  • 初识Lua

    继上一篇文章安装完成之后,编写一个最简单的lua脚本小试牛刀,这里我用的是简单的vim编辑器。 vim test....

  • 初识Lua

    Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用...

  • 初识Lua

    Lua介绍 Lua是什么(Lua程序设计语言是一个简洁、轻量、可扩展的脚本语言。Lua读作/'lua/(噜啊),是...

  • Androlua+之背景

    初识Androlua+ Androlua1.0是Github上一个开源项目,该版本只支持运行简单的lua代码。国内...

  • Lua的OOP小例子

    player.lua magician.lua soldier.lua main.lua

  • lua开篇-hello lua

    1、获取lua 访问lua官网:http://www.lua.org/ 下载最新的lua版本lua-5.3.4.t...

  • 【IOS开发高级系列】Lua与OC交互专题

    1 Lua语法 Lua教程 http://www.yiibai.com/lua/lua_environment.h...

  • Lua 完全教程

    Lua 环境安装 Lua 基本语法 Lua 数据类型 Lua 数据类型:nil(空) Lua 数据类型:boole...

  • linux软件的安装与升级(lua)

    lua源码组成 lua安装 http://www.lua.org/ftp/lua-5.1.5.tar.gz

  • lua脚本

    lua脚本 执行方法下载lua 打开cmd 或者命令界面 执行lua使用lua 文件

网友评论

      本文标题:初识Lua

      本文链接:https://www.haomeiwen.com/subject/yanmvktx.html