`
WhisperQQ
  • 浏览: 58731 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Leo翻译系列之一:什么使得Leo与众不同?

阅读更多
[原文见:http://webpages.charter.net/edreamleo/WhatIsLeo.html]

Leo提纲模式提供了新的编程方式
  Leo将代码或数据的方方面面都组织成一种可见的提纲。但是提纲能做的远不只简单的组织:
   - 提纲结构是第一类数据,它可以被程序或脚本访问。Leo是完全由Python脚本编写的。实际上,通过脚本访问提纲中的数据是非常容易的事情,这还包括提纲中明确定义的所有层次关系。
   - 提纲节点提供了一个通过数据自身来关联元数据(数据定义或描述)的自然而然的方式。标题包含描述,内容记录了实际数据。摘要性质的元数据对人是有用的。更重要的是,遵循元数据定义来编写脚本(元数据驱动)让开发变得简单起来。
   - Leo可以通过标准的标记语言noweb从提纲中生成脚本。也就是说,脚本不只是使用了提纲结构,它本身就具有提纲的结构。
   - Leo的一个插件(script-button)可以根据提纲中特定的“脚本节点”建立“脚本按钮”。脚本按钮出现在Leo提纲窗口的扩展面板中。脚本按钮可以执行当前选中的提纲节点对应的脚本。试一试你就知道这个功能是多么的酷!例如,一个脚本按钮可以根据选中的提纲脚本中自动建立单元测试,完全不需要程序员来编写!
  还有很多很多的理由都是来阐述如下观点:集成提纲结构的开发模式是对现有编程模式的根本性的补充。我们的结论就是Leo是个非常强大的文本编辑和编程环境。

Leo可以让你随心所欲的组织你的代码、数据。
  Leo提供了一种的可以任意产生提纲的视图的方式。用户通过建立叫做克隆节点的链接性节点来建立任意视图。Leo对所有克隆节点同时进行更新:任意一个克隆节点的任何改动(内容或者结构)将即时同步到其他节点。
  视图提供了明确、固有的信息;它们让理解和管理各种复杂数据变得更加容易。例如:视图经常代表着各种具体工作。程序员使用工作视图来组织代码、注释、测试等等相关数据。管理员使用工作视图组织设计信息或任务列表。Web设计师使用视图来组织网站的各个片段。

Leo支持、简化并且扩展了文学化编程方法论的使用
  Leo用户可以从一个提纲文件中随心所欲地生成各种派生文件。这个操作名叫"tangling"(混出),它由提纲文件中的noweb标记语言进行控制。"untangling"(混入)是它的逆向操作,也就是说,将来自派生文件的修改同步到Leo提纲文件中。混出、混入操作是可以自动进行的,这样大家很快就习惯了对常规的源代码文件视而不见(译者注:LP注重用户思路的组织,并且认为思路组织好了,程序自然就完成了),就像一个C语言程序员对待机器语言文件一样。
  混出是所谓的文学化编程(LP)系统的关键特性。LP方法论由来已久,它没有流行开的原因就是因为LP工具很难使用、LP程序难以理解。Leo完全改变了这些状况,它让一切都变得友好了。

Leo是动态可扩展的
  Leo有一个活跃的社区;Leo是SourceForge上排名前200的项目之一。人们经常不断地创造出Leo的新的用法。千千万万的人在使用Leo;他们不少人对Leo充满了热忱。
  Leo的用户对Leo的开发作出了巨大的贡献。例如,Leo具有一个简单、强大的插件机制,它充分发挥了Python语言的动态语法的优势。这个插件体系由Leo的用户Paul Paterson建立。Paul最近在编写另外一个插件用于管理Leo用户贡献的成打插件。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics