[原文见:
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用户贡献的成打插件。
分享到:
相关推荐
Leo-IM,开源好用的IM。 Leo-IM是基于Java语言、Netty框架、Vue+Element-UI开发的轻量级IM,服务端可独立运行(无需部署到web容器),HTTP服务和Socket服务可分开部署,使用基于Netty扩展的RESTful框架提供Web服务,...
标题中的“空天互联网观察系列之一:通导融合,从StarLink看北斗与空天互联网将大力发展”揭示了本文的核心内容,它涉及到两个主要的领域:空天互联网和通信导航系统的融合,特别是通过分析SpaceX的StarLink项目来...
### LEO卫星通信系统的关键技术与架构 #### 摘要概述 本文旨在全面概述宽带低地球轨道(LEO)卫星通信系统中的关键问题。首先介绍了网络架构,这是整个系统的基础。特别关注的是带有星际链路(ISL)的空间基LEO...
通过此扩展程序,您可以在任何网站上显示选定文本的LEO翻译,只需单击右键即可。 该Chrome扩展程序可在任何网站上的任何文本的右键菜单中添加一个条目。单击此新行将在新选项卡中打开翻译服务LEO...
"Leo课件播放工具"是一款专为学习者设计的小巧实用的播放软件,主要用于播放各类教育课程相关的多媒体文件。这款工具以其简洁的界面和高效的功能,为用户提供了便捷的在线学习体验。作为一款信誉良好的软件,它确保...
【标题】"leo-infra-template: 任务" 暗示了这是一个与基础设施模板相关的项目,可能是为了自动化或标准化IT部署流程。"Leo"可能是项目代号或团队名称,而"infra-template"则指的是用于创建和管理基础设施的蓝图或...
随机森林是一种强大的机器学习算法,由著名统计学家和数据挖掘专家Leo Breiman在2001年提出。这个算法在预测任务中表现出色,无论是分类还是回归问题,它都能提供高精度和良好的模型稳定性。"Random Forests-LEO ...
Leo.Services.Muses:歌手和歌曲
Leo GRADY的随机游走分割算法是一种在图像处理领域广泛应用的高级技术,它结合了图论和概率论的概念,旨在有效地将图像划分为多个具有不同特征的区域。该算法的核心在于将图像像素视为图中的节点,像素间的相似性则...
"leo_Plugin.rar" 文件很可能包含一个插件化工程的示例或框架,供学习者了解和实践插件化技术。下面将详细介绍插件化工程的核心概念以及可能涉及到的关键知识点。 1. **插件化基础**: 插件化的基本思想是将一个大...
leo-board-pinoccio pinoccio arduino 兼容板的 leo 板配置文件 leo 是用于 node 的命令行 arduino 构建工具,可让您将 npm 用于 arduino 疯狂的库 === 惊人
【QiangxieSystem-leo:互联网开发作业:抢鞋系统】是一个针对互联网开发的学习项目,旨在模拟实际的在线抢购场景,特别是针对热门商品如限量版运动鞋的销售过程。这个项目涉及到的关键技术主要是前端界面的构建,...
### Random Forests (Leo Breiman) #### 一、引言 随机森林(Random Forests)是一种由决策树组成的预测模型集合,每棵树都依赖于独立且相同分布的随机向量值。这种模型组合的方式使得随机森林在分类和回归任务中...
标题"DFT_LEO_USBH_WM65"与描述"DFT_LEO_USBH_WM65.rar 用于HD2在WM6.5下的OTG驱动。"共同揭示了一个关键知识点:这是一份针对HTC HD2手机在Windows Mobile 6.5(简称WM6.5)系统下的OTG(On-The-Go)功能的驱动程序...
Leo-IM,开源好用的IM。 在线演示 演示地址: 建议使用Chrome浏览器 演示用户1:用户名 test1,口令 123456 演示用户2:用户名 test2,口令 123456 演示用户3:用户名 test3,口令 123456 运行环境要求 Chrome、IE10...
htc hd2 wm6.5珍藏版官方繁体中文,留作纪念,RUU_Leo_S_HKCSL_CHT_3.14.832.3_Radio_15.42.50.11U_2.15.50.14_LEO_S_Ship.exe
1. LEO卫星网络(低地球轨道卫星网络):LEO卫星网络是一个覆盖全球的卫星通信系统,其卫星轨道较低,环绕地球运动的周期较短。LEO卫星网络的特点包括全球覆盖、在轨信息处理能力和转发能力等。高带宽的星间链路...
资金注入\支出(非货款)、财务状况查看 客户管理-客户资料明细 数据安全-数据备份、数据恢复 常用工具-计算器 <br/>以及相应项目的报表打印、预览等功能 <br/> msn:leo_a008@hotmail....
总之,Snow Leo 911 Pro 1.5.1是一款全面的Mac系统维护工具,其强大的功能集和用户友好的界面使得普通用户也能轻松应对各种系统问题。通过种子文件下载,用户可以在保持匿名性和节省带宽的同时,享受便捷的软件获取...
"Leo Premium admin template"是一款基于Bootstrap框架精心设计和开发的后台管理系统界面模板。这款模板以其全面的功能、强大的性能以及优雅的界面设计,深受开发者和管理员的青睐。在深入探讨其特点之前,先来了解...