Configuring and Scripting Your Applications
有一个我见过很多次的模式,一个应用程序启动时需要某种形式的配置,可能是一个简单的配置文件,或者更完整的部署描述符文件;最后,配置变的更复杂,应用程序最后需要一种脚本语言;对于简单的配置文件,XML很流行;对于脚本语言,你可以创建自己的,或者借用一种general-purpose的脚本语言,像VBScript,Python/Jyphon,Tcl,Javascript,或者Lisp;这些方案中的每一种都至少有一些主流编程方法的标准缺陷:很长的实现时间,陡峭的学习曲线,难以扩展,匮乏的环境支持,等等
作为替代的,你能够使用MPS创建你自己的配置/脚本语言;你的应用程序的用户将会拥有一种易于使用的、智能的编辑器来编写他们的脚本,包括语法加亮,错误加亮,代码完成,导航等;只需花费很少的时间来创建并集成这种语言到你的应用中;为了使用这种应用,你可以分发MPS的运行时
Conclusion
LOP 和MPS背后的思想并不新鲜,实际上已经出现超过20年了;Language Oriented Programming本身这个词也已经提出至少10年了;新鲜的是这些思想一直在软件开发社区默默的渗透,而它们的时代最终到来了;通过这篇文章,我希望提供一颗种子,使这些思想能够产生新的讨论、意见、批评、实验、研究、和最终的真实生活中的项目
并且,因此,我邀请你以任何你能做到的方式参与到这种新的范型中来;在后面添加评论,或者发送Email给我:mps_article@jetbrains.com;在http://www.jetbrains.com/mps可找到更多,请关注更新;注意浏览从LOP的视点出发的网站,杂志,博客,书籍等,并思考事情到底能够多么简单;考虑一下你自己的项目,看看你有多频繁的实际上在设计和使用小的特定的用类和方法修补的语言;你是怎么认为的呢?我想知道
当我将LOP的概念用在开发MPS自身时,我已经看到了Language Oriented Programming是如何彻底改进软件开发的第一手资料;MPS目前并没有为真实世界准备好,但它已经成功的达到了目的;也还依然没有文档,除了这篇文章;我将很快的发布更多的文章,深入的探讨MPS;还有,我计划下月试验着使MPS可下载,因此你的耳朵要保持张开;已经有其它的项目使用了类似的方法,特别是来自Intentional Software 和 Xactium
因此,探险愉快,让我看看你能发现什么
?
Acknowledgements
I would like to thank Rob Harwood for his help in editing this article. I would also like to thank the following people for their reviews, comments, and suggestions: Igor Alshannikov, Florian Hehlen, Jack Herrington, Guillaume
Laforge, Vaclav Pech, Thomas Singer, Dmitry Skavish,David Stennett, and Timur Zambalayev.
About the Author
Sergey Dmitriev (http://www.sergeydmitriev.com) is the co-founder and CEO of JetBrains Inc.(http://www.jetbrains.com), makers of the IntelliJ IDEA Java IDE.
文章来源于领测软件测试网 https://www.ltesting.net/