标题：raptor
RAPTOR
RAPTOR（the Rapid Algorithmic Prototyping Tool for Ordered Reasoning--用于有序推理的快速算法原型工具），是一种可视化的程序设计环境，为程序和算法设计的基础课程的教学提供实验环境。
使用RAPTOR设计的程序和算法可以直接转换成为C++、C#、Java等高级程序语言，这就为程序和算法的初学者铺就了一条平缓、自然的学习阶梯。
背景
沙克尔福德和勒布朗（Shackelford and LeBlanc）曾经观察到的在计算导论课程中使用特定的编程语言容易导致学生“受到干扰并从算法问题求解的核心上分散注意力”。由于教师希望学生在上课时间中解决他们觉得最有难度的问题。因此，往往把授课的重点集中在语法上，这是由于大部分学生都会遇到的困难（例如：在C语言环境中，错将须使用关系运算符“==”用成了赋值符号“=”，或在语句结束时遗忘了分[1]号等）。
此外，费尔德（Felder）指出，大多数学生是视觉化的学习者，而教师则往往倾向于提供口头讲授。有的专家研究估计，此外，费尔德（Felder）指出，大多数学生是视觉化的学习者，而教师则往往倾向于提供口头讲授。有的专家研究估计，在高校大约有75%到83%的学生为视觉化学习者。所以对大多数学生来说，由于其高度的文本化，而不是视觉化的性质，无论是传统的编程语言或伪代码提供了一个反直觉的算法表达框架。
在最终用户开发（End User Development）的背景下，菲舍尔（Fischer）等陈述了图形语言优于文字的好处，他说：“基于文本的语言往往是比较复杂的，因为任何人类语言从无到有，必须从语法和词汇（术语）开始。因此，专为最终用户设计的图形语言表达了编程世界中的包含了通过条件行动规则（condition-action rules）自我训练的图形隐喻。其目标则是通过缩短现实世界中的行动与程序设计之间的概念距离来减少学生学习上的认知负担。”
RAPTOR专门用于解决非可视化的环境的句法困难和缺点。RAPTOR允许学生用连接基本流程图符号来创建算法，然后可以在其环境下直接调试和运行算法，包括单步执行或连续执行的模式。该环境可以直观地显示当前执行符号所在的位置，以及所有变量的内容。此外，RAPTOR提供了一个基于Ada[1] Graph的简单图形库。学生不仅可以可视化创建算法，所求解的问题本身也是可以是可视化的。
RAPTOR作为一种可视化程序设计的软件环境，已经为卡内基.梅隆大学等世界上22个以上的国家和地区的高等院校使用，在计算机基础课程教学中，取得良好的效果。
由于RAPTOR是一种基于流程图的可视化程序设计环境。而流程图是一系列相互连接的图形符号的集合，其中每个符号代表要执行的特定类型的指令。符号之间的连接决定了指令的执行顺序。由于流程图是大部分高校计算机基础课程首先引入的与程序、算法表达有关的基础概念，所以一旦开始使用RAPTOR解决问题，这些原本抽象的理念将会变得更加清晰。
使用RAPTOR基于以下几个原因：
· RAPTOR开发环境可以在最大限度地减少语法要求的情形下，帮助用户编写正确的程序指令。
· RAPTOR开发环境是可视化的。RAPTOR程序实际上是一种有向图，可以一次执行一个图形符号，以便帮助用户跟踪RAPTOR程序的指令流执行过程。
· RAPTOR是为易用性而设计的（用户可用它与其他任何的编程开发环境进行复杂性比较）。
· 使用RAPTOR所设计程序的调试和报错消息更容易为初学者理解。
· 使用RAPTOR的目的是进行算法设计和运行验证，所以避免了重量级编程语言，如C++或Java的过早引入，给初学者带来的学习负担。。
其他相关环境
事实上，IBM已经认识到可视化编程环境对其产品最终用户的重要性，他们在其WebSphere产品中使用了基于流程图的开发环境。
瓦茨（Watts）等开发了SFC，一种结构化流程图编辑器。SFC允许用户开发的流程图，并始终在显示流程图的同时显示C或Pascal类似程序语法的文本。然后用户可以复制和粘贴文本到另一个文本编辑器中进行修改，以获得完整的程序。
卡奥尼和巴格特（calloni and Bagert）开发了一个图标式的编程语言，BACCII+，这是作为C++到补充并应用在大学的计算机基础课程序列中。他们的实验表明，学生使用BACCII+和C++两者的表现比使用那些只使用C++的效果更好。一旦BACCII+程序开发完毕，用户可以生成多种基于文本的语言（包括Pascal和C++代码）。
FLINT是由美国西肯塔基大学齐格勒等人开发的一个程序设计开发教学环境，在FLINT中进行程序开发消除了文本代码必须调试的缺陷。使用FLINT，学生需要进行一次自上而下的程序分解，然后为实现每个子目标而设计流程图。流程图可以在FLINT中执行。这迫使学生使用软件工程中的瀑布模型[2]，而实际上学生在使用增量[3]或螺旋[4]方式开发可能有更多的成功机会。
Visual Logic是FLINT的后续项目，是为过渡到Visual Basic课程之前专为大学的第一门计算机课程设计的。它摒弃了瀑布模型的编程，并增加了对一维数组和图形功能支持。
与上述程序开发环境相比，RAPTOR将以上产品功能都结合在一起并进化成更先进的教学工具。RAPTOR让学生在其环境内执行算法，而无须单独编译和执行。这意味着，程序逻辑不必在传统程序设计的文字环境中进行设计和调试，可以直接在可视化表达环境中进行，从而也避免了使用多种工具时带来的学习负担。
对学生而言，RAPTOR并没有强制要求对程序设计目标进行自上而下分解，而是让学生逐步开发代码。此外，RAPTOR中包含一维和二维数组，文件，字符串和一个允许用户交互的图形库，。因此，较之以前的工具学生能够创造出更有趣的算法。
[2]
[1]Ada是一种大型通用程序设计语言，它是现代计算机语言的成功代表，集中反映了程序语言研究的成果。
[2]瀑布模型（Waterfall Model）瀑布模型核心思想是使用系统化的方法将复杂的软件开发问题化简，将软件功能的实现与设计分开。将开发划分为几个基本活动（制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动），并且规定了它们自上而下、相互衔接的固定次序，如同瀑布流水，逐级下落。
[3]增量模型（incremental model）融合了瀑布模型的基本成分和原型实现的迭代特征。当使用增量模型时，第一个增量往往是产品的核心，即它实现了基本需求，但很多补充的特征还有待发布。客户对每一个增量的使用和评估都作为下一个增量发布的新特征和功能，这个过程在每一个增量发布后不断重复，直到产生了最终的完善产品。
[4]螺旋模型（Spiral Model）采用一种周期性的方法来进行系统开发。该模型也称为快速原型法，以进化的开发方式为中心，在每个项目阶段使用瀑布模型法。这种模型的每一个周期都包括需求定义、风险分析、工程实现和评审4个阶段，由这4个阶段进行迭代。软件开发过程每迭代一次，软件开发又前进一个层次。
In science:
Bird of prey, also known as a raptor, a type of bird often characterized by a hooked beak, sharp talons, and keen eyesight. 
An informal term to refer to certain dinosaurs, most notably the Dromaeosauridae, including the Velociraptor, Deinonychus, Utahraptor and some other theropods such as the Oviraptor and the Gigantoraptor 
some primitive birds, such as the Shenzhouraptor 
In the South African military:
Raptor weapon, a series of South African Air Force precision guided glide weapons. 
In the US military:
VMMT-204, the MV-22 Osprey training squadron of the United States Marine Corps known by the nickname "The Raptors" 
F-22 Raptor, a United States Air Force stealth fighter airplane 
In technology:
Cagiva Raptor, a motorbike 
Raptor FEC Technology 
Roboraptor, a robotic dinosaur 
RAPTOR reconnaissance pod carried by RAF Tornados 
WD Raptor, a high-performance hard disk drive from Western Digital 
Raptor 660, an ATV 4-wheel motorcycle produced by Yamaha 
Raptor, an R/C Helicopter manufactured by Thunder Tiger 
Raptor, the name of early versions of the Gecko Layout Engine 
Raptor, an RDF parser and serializer from the Redland RDF Application Framework 
In sports and entertainment:
Toronto Raptors, the Canadian NBA basketball team 
Ogden Raptors, an American professional baseball team playing in the Pioneer League 
Randers Raptors, a Danish floorball team 
Raptor (roller coaster), a roller coaster at the Cedar Point amusement park in Sandusky, Ohio 
Raptor convention, a contract bridge convention 
Raptor, an electric guitar produced by Peavey Guitars 
In fiction:
Raptor heavy fighter, a starfighter in the Wing Commander universe 
Raptor: Call of the Shadows, a computer game 
Raptor, a fictional character from G.I. Joe: A Real American Hero 
Raptor (comics), a Marvel Comics superhero from the MC2 universe 
Raptor (Marvel Comics) 
Raptor (Battlestar Galactica), a military spacecraft in the Battlestar Galactica universe 
Raptor, one of the Unreal Tournament 2004 Vehicles (and 2007) as well as a vehicle in Unreal II eXpanded MultiPlayer 
Raptor, a novel written by Gary Jennings 
Lord Raptor, a character from the Darkstalkers series of fighting games 
Raptor, the most common type of enemy Orbital Frame in the Zone of the Enders video game series 
Raptor, a member of a group of genetically engineered commandos from Earth's future in the comic book story XTNCT 
Raptor, a 2001 made-for-television horror film