我打算在Windows桌面上自动化一些任务(例如整理大量音乐/文本/照片文件等)。
考虑到我主要的开发专业知识是Unix上的Perl,为了开发效率,我更愿意使用Perl编写所需完成的业务逻辑,但问题是,如果我想在工作中添加一些GUI(类似于Unix上的Perl::Tk),我的GUI工具包选择有哪些选项,你会建议使用哪一个?
请注意,我希望这个问题能成为其他SO用户的良好学习机会,因此即使回答不一定满足我个人的限制/需求,我也欢迎任何答案,尽管对于与这些考虑相关的解释会很受欢迎。
我的考虑主要是因为我想要一个快速开发的工具,用于个人使用,以节省我手动执行的时间。
最重要的考虑因素是Perlishness开发--正如Perl标语所说,“简单的事情应该很容易完成,复杂的事情应该有可能完成”。特别是第一部分 :)
尽可能使用原生组件,但不强制。例如,宁愿重新使用Windows的文件打开对话框,而不是使用某个自定义Java对话框。
我更希望使用学习曲线较小的内容(例如,无需学习OLE / COM的复杂性),因为目标是快速开发我需要简化生活的工具,而不是专注于与我的日常工作更相关的开发者教育 :)。
但是,如果在此过程中提出了一些新/酷的Monad GUI组件,我肯定会感兴趣。
性能很重要(例如,我可能需要显示具有> 10000个文件的目录列表),但并非首要关注--我是一个非常好的GUI设计师和开发人员,如果需要,可以始终构建应用程序并设计GUI以实现良好的扩展性。
我强烈倾向于(但并非坚持要求)不需要编译的框架。例如,Perl库比我需要编译的自定义Java代码更可取。但如果该框架在其他方面完美无缺,我也可以接受编译后的解决方案(只要不要求我购买Visual Studio或类似软件 - 我只想为个人使用构建Windows GUI前端,而不是投资成为Windows开发人员)。
除了以上限制,我非常开放和灵活。有一些ActivePerl/Strawberry Perl库、MS PowerShell组件 - 哎呀,如果没有更好的选择,我就在我的电脑上安装Apache并构建一个Web前端 :)