如何选择适合编写类似webmin的管理控制台的语言?

2024-05-13 17:23:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我们有一个内部开发的基于web的管理控制台,它使用CGI和Perl脚本的组合来管理我们的邮件服务器堆栈。最近我们一直在考虑清理代码(好吧,替换大部分代码),使实现更安全,并改进整体行为。在

我没有太多的编程知识,但我使用Ruby on和off(主要用于编写erb模板),因此考虑使用Ruby/rails开发这样一个应用程序(现在下班了,我还需要学习一些东西!)。在

在盲目学习语言之前,你们有什么建议?请让我知道如果这是一个太模糊的问题,我会尽量提供更多的信息,如果需要。在


Tags: 代码服务器脚本模板web堆栈on编程
3条回答

您是否考虑过将应用程序编写为Webmin模块?在

当你这样做的时候,你会得到很多免费的东西(用户和组,大量的安全特性,与配置文件相关的各种各样的助手函数,以及UNIX/Linux系统大多数方面的大量现有代码)。你还可以得到很多几乎免费的东西,比如通过wbm、apt或yum(一个在线帮助系统)的动作日志、包和更新等

也有一些缺点。它是一个旧的代码库,所以它在API中有一些笨拙的地方。如果您不是一个老派的Perl程序员,那么很多旧模块可能会有点难以摸索。但是,它是一个维护良好的代码库,它已经被数百万用户使用了十几年。它很结实。用户界面并不漂亮,但相对来说它是主题化的,如果你发布一个最小化的版本,那么用户界面的定制就变得更容易了。在

我怀疑你可以比从头开始或使用大多数现有的框架更快地启动和运行,这些框架并不是专门为构建Webmin那样的系统管理接口而设计的。在

而且,它是BSD授权的,所以你可以用它做任何你想做的事情,包括用它构建一个定制的商业应用程序(多年来已有数百家公司这么做)。在

如果你已经知道一点ruby,那么就没有理由不使用它了。在

如果你对学习另一种语言特别感兴趣,那么你想做的事情几乎可以在任何一种语言/框架中完成,问题在于你想学哪一种。在

在不太了解现有应用程序的情况下,我认为这实际上归结为“您喜欢使用哪种语言?”。在

Python和Ruby都是成熟的语言,具有丰富的库基础设施。它们还拥有流行的、相似的web应用程序框架,分别是Django和rubyonrails。在

因为您正在移植一个现有的Perl应用程序(lets),所以值得注意的是,Ruby的相对来说更类似于Perl。考虑到Ruby受到了"primarily by Perl, Smalltalk, Eiffel and Lisp"的影响,这并不奇怪。在

相关问题 更多 >