Lua中文教程(11)
时间:2025-03-10
时间:2025-03-10
Programming in Lua1第 0 章 序言本章包括作者的序言、文章的体例(convention)以及其它一些“每本书开头都会的 内容” 。0.1 序言目前很多程序语言都专注于帮你编写成千上万行的代码,所以此类型的语言所提供 的包、命名空间、复杂的类型系统及无数的结构,有上千页的文档需要操作者学习。 而 Lua 并不帮你编写大量的代码的程序,相反的,Lua 仅让你用少量的代码解决关 键问题。为实现这个目标,像其他语言一样 Lua 依赖于其可扩展性。但是与其他语言不 同的是,不仅用 Lua 编写的软件易于扩展,而且用其他语言比如 C/C++编写的软件也很 容易使用 Lua 扩展其功能。 一开始,Lua 就被设计成很容易和传统的 C/C++整合的语言。这种语言的二元性带 来了极大的好处。Lua 是一个小巧而简单的语言,因为 Lua 不致力于做 C 语言已经做得 很好的领域,比如:性能、底层操作以及与第三方软件的接口。Lua 依赖于 C 去做完成 这些任务。Lua 所提供的机制是 C 不善于的:高级语言、动态结构、简洁、易于测试和 调试等。正因为如此,Lua 具有良好的安全保证,自动内存管理,简便的字符串处理功 能及其他动态数据的改变。 Lua 不仅是一种易于扩展的语言,也是一种易整合语言(glue language) ;Lua 支持 基于组件的,我们可以将一些已经存在的高级组件整合在一起实现一个应用软件。一般 情况下,组件使用像 C/C++等静态的语言编写。但 Lua 是我们整合各个组件的粘合剂。 又通常情况下, (或对象) 组件 表现为具体在程序开发过程中很少变化的、 占用大量 CPU 时间的决定性的程序,例如窗口部件和数据结构。对那种在产品的生命周期内变化比较 多的应用方向使用 Lua 可以更方便的适应变化。除了作为整合语言外,Lua 自身也是一 个功能强大的语言。Lua 不仅可以整合组件,还可以编辑组件甚至完全使用 Lua 创建组 件。 除了 Lua 外,还有很多类似的脚本语言,例如:Perl、Tcl、Ruby、Forth、Python。 虽然其他语言在某些方面与 Lua 有着共同的特色,但下面这些特征是 Lua 特有的:① 可扩展性。Lua 的扩展性非常卓越,以至于很多人把 Lua 用作搭建领域语言的 工具(注:比如游戏脚本) 。Lua 被设计为易于扩展的,可以通过 Lua 代码或者 C 代码扩展, Lua 的很多功能都是通过外部库来扩展的。 Lua 很容易与 C/C++、 java、 fortran、Smalltalk、Ada,以及其他语言接口。 ② 简单。Lua 本身简单,小巧;内容少但功能强大,这使得 Lua 易于学习,很容 易实现一些小的应用。他的完全发布版(代码、手册以及某些平台的二进制文件)Copyright ® 2005, Translation Team,