Linux 是一个引人入胜的操作系统,因为它允许任何用户参与其开发。然而,可用的语言种类繁多,可能会使 Linux 初级开发者感到困惑。本文档列出了日常开发中最常见的选项,并陈述了关于它们的一些关键事实。(嗯,“最常见”和“关键”都是我个人认为的。)
我的目的既不是评测这些语言,也不是确定哪种语言是最好的。每种语言都是一种工具,适用于某些工作和某些口味。如果你四处询问或留心听取,你可以很容易地获得更多(通常是相互冲突的)信息。本文档中的“链接”部分将为你的研究提供一些指导。
Linux 有大量的语言和库,因此本文档目前仅涵盖最常用的语言和 GUI(图形用户界面)工具包。本文档旨在保持相当中立的态度,但我并没有包含所有可用的语言。由于我的判断无疑在许多方面存在偏见,我建议认真的开发者查看那些在列出所有语言和库方面做得更好的网站。另请注意,本文档仅涵盖语言和 GUI 工具包的 Linux 实现,它们在其他平台上的功能未被讨论或暗示。
本文档是 LDP 的最新补充,因此还没有机会获得太多社区反馈。然而,发布本文档是希望它能对那些对 Linux 下编程感兴趣的人,尤其是初学者,有所帮助。表格中的问号表示缺乏信息。如果您可以补充完整,请联系作者。
您可以在 http://www.helsinki.fi/~rvaranka/Computer/Linux/HOWTO/ 找到最新的修改。
版权所有 (c) 2000 Risto Varanka。
以下许可条款适用于所有 LDP 文档,除非文档中另有说明。LDP 文档可以完整或部分地以任何物理或电子媒介复制和分发,前提是在复制品中显示此许可声明。允许并鼓励商业再分发。如果能提前三十天通过电子邮件通知作者有关再分发事宜,我们将不胜感激,以便作者有时间提供更新的文档。
所有修改过的文档,包括翻译、文集和部分文档,都必须满足以下要求
此外,还要求
作为一项特殊例外,LDP 文档的文集可以在文集中显眼的位置包含一份本许可条款的副本,并将本许可的其他副本替换为对该许可单一副本的引用,而该文档在本节的意义上不应被视为“已修改”。
仅仅将 LDP 文档与其他文档或程序在同一介质上聚合,不应导致本许可适用于其他作品。
所有翻译、衍生文档或包含任何 LDP 文档的修改文档不得具有比这些更严格的许可条款,但您可以要求分发者以源格式提供最终文档。
本文档涵盖了一个庞大且不断变化的领域。因此,本文档中包含的信息可能不正确或已过时。使用本文档以及其中包含的所有信息的风险由您自行承担。作者不提供任何明示或暗示的保证或担保。
欢迎您发送反馈给作者,地址:risto.varanka@helsinki.fi。
作者的网站可以在 http://www.helsinki.fi/~rvaranka/ 找到。
我感谢多位对语言问题发表评论的人。这些对话让我对不同的语言有了更好的了解,我希望未来的对话能让这篇 mini-HOWTO 随着时间的推移而成熟。特别感谢 IRCNet #linux 频道的人们:Morphy、Bluesmurf、Vadim、Zonk^、Rikkus 以及其他我已忘记名字的人。还要感谢 Stig Erik Sandoe 的有益评论。
Linux 开发库和工具的详尽列表
Eric S. Raymond 撰写的 Hacker FAQ 是另一篇对 Linux 初级开发者来说有趣的文本。它侧重于开源开发的一些文化和心理方面。
其他涵盖通用编程主题的 LDP 文档 包括 Reading List HOWTO 和 Linux Programmer's Guide - 还有更多关于特定主题的文档。