我正处于一个被迫学习Lua的阶段,所以你对我这样做有什么建议吗?除了PHP之外,我没有其他任何脚本语言的经验.
那么,关于"先行Lua"的一些建议 - 页面?
编辑
作为精彩教程页面的补充,您能否建议我能制作的任何"程序"能帮助我学习Lua吗?想象一下,我想学习C++中的指针,我会创建一个链接列表.我想触及Lua的基础知识,但同时也要接受相当高级的东西.
首先通过Lua编程工作,你需要花一两天的时间来获得Lua的要点.
但是我可以在你第一次通过忽略协同程序和metatables时立即告诉你,它们非常强大,但需要一段时间才能掌握.首先学习语法,作用域(幸运的是和你一样)和标准库.
在那之后回到coroutines和metatables,阅读他们尝试他们,并在第三次通过你可能得到它.除非你有非常好的CS背景,否则这些都是复杂的主题
编辑:这本书是免费在线==网站.除了它是Lua上最好的教程之外,每个人都学习Lua.
另外:如果你的目的是Lua for the World of Warcraft(可能不仅仅是以防万一),你可以查看本教程
而且:这是StackOverflow上的提示和技巧主题,可能会帮助您了解Lua的一些想法
建议的课程/练习:
由于您最初在浏览Lua进行Web开发,因此请尝试了解并改进PIL中的数据描述示例.它会给你一些好的想法和对力量或Lua的好感觉.
然后你可能想尝试使用数据结构一章,虽然Lua有一个复杂的数据类型,Table,该章节将向你展示类似Lua的方法,让表格做你需要的任何事情.
最后,一旦你开始研究metatables,你应该设计一个类系统(是的,用Lua决定你的类系统是如何工作的).我确信每个知道Lua的人都已经制作了十几个类系统,一个很好的章节让你开始上课系统是面向对象的编程
如果你有时间并且知道C或类似的东西(包括C#和Java)尝试使用Lua扩展应用程序,但这需要一到两周的时间来完成
有趣的是看到所有这些精心制作的清单(虽然它们肯定是正确的).回到2002年,我阅读了Lua参考手册的前20页,并开始使用它.它真的很简单.Lua(和ANSI C)是同时真正适合一个人的少数语言 - 并且留在那里.对于其他人来说,至少我需要经常重新学习.
请注意,在Lua中思考需要时间.我想我的时间是6个月左右.当来自C/C++时,我们倾向于以某种方式解决问题.Lua可能提供更好的手段(即通过使用表格),但需要一段时间才能开始看到这些.这种向更高抽象级别的转换类似于1980年代的Assembler-> C转换.许多人仍然在C中编写了一段时间,好像它只是一个便携式汇编程序.