Java程序员要不要学习Lua?_javagui有必要学吗

createh55个月前 (02-08)技术教程51

大家好,我是袁庭新。Java程序员要不要学习Lua?Lua虽小,但威力巨大!游戏开发、嵌入式系统、自动化脚本...哪哪都离不开它!

|Lua介绍

Lua官网:https://www.lua.org。

Lua是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放。其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。

Lua是巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)里的一个研究小组于1993年开发的,该小组成员有:Roberto Ierusalimschy、Waldemar Celes和Luiz Henrique de Figueiredo。

|Lua特性

轻量级:它用标准C语言编写并以源代码形式开放,编译后仅仅一百余K,可以很方便的嵌入别的程序里。

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

面向对象编程:在Lua中,可通过create a module和table可以很方便地支持面向对象编程所需要的一些关键机制,比如数据抽象,继承和重载等。

其它特性:

  • 支持面向过程(procedure-oriented)编程和函数式编程(functional programming);
  • 自动内存管理,只提供了一种通用类型的表(table),用它可以实现数组、哈希表、集合、对象;
  • 语言内置模式匹配;闭包(closure);函数也可以看做一个值;提供多线程(协同进程,并非操作系统所支持的线程)支持;
  • 通过闭包和table可以很方便地支持面向对象编程所需要的一些关键机制,比如数据抽象,虚函数,继承和重载等。

|Lua教程大纲

Lua大纲的核心内容:Lua概述、Lua环境安装、Lua基础语法、Lua中的变量、Lua运算符、Lua字符串、Lua流程控制、Lua循环结构语句、Lua函数、Lua table表、Lua数组、Lua迭代器、Lua模块与包、Lua元表、Lua协同程序、Lua文件I/0、Lua错误处理、Lua调试、Lua垃圾回收、Lua面向对象、Lua数据库访问。

下面的Xmind是我整理的思维导图:

相关文章

Java基础入门篇(四)Java SE、Java EE、Java ME三者之间的区别

编者荐语:Java 是排名第一的编程语言和开发平台。它可以降低成本、缩短开发时间、推动创新并改进应用服务。随着全球数百万开发人员运行超过 510 亿台 Java 虚拟机,Java 继续成为企业和开发人...

JAVA语言简介_java语言主要有哪些特点

Java 是一种面向对象、跨平台的高级编程语言,由 James Gosling 及其团队于 1995 年 在 Sun Microsystems(现属 Oracle 公司)开发。其核心理念是 "Writ...

带你好好掌握:最全最详细的Java IO流

本文主要介绍 Java中的I/O系统如有需要,可以参考如有帮助,不忘 点赞 ?前言:对程序语言的设计者来说,创建一个好的输入/输出 (I/O) 系统是一项艰难的任务Java IO:即 Java 输入/...

Java开发必读,谈谈对Spring IOC与AOP的理解

本文分享自华为云社区《超详细的Java后台开发面试题之Spring IOC与AOP-云社区-华为云》,作者:GaussDB 数据库。一、前言IOC和AOP是Spring中的两个核心的概念,下面谈谈对这...

如何在 Linux 上安装 Java_怎么在linux安装jdk

在桌面上拥抱 Java 应用程序,然后在所有桌面上运行它们。-- Seth Kenlon(作者)无论你运行的是哪种操作系统,通常都有几种安装应用程序的方法。有时你可能会在应用程序商店中找到一个应用程序...

「是时候升级Java11了」 JDK11优势和JDK选择

专注于Java领域优质技术,欢迎关注作者:冷冷ggJava8 商用收费从2019年1月份开始,Oracle JDK 开始对 Java SE 8 之后的版本开始进行商用收费,确切的说是 8u201/20...