本节书摘来自异步社区《面向ArcGIS的Python脚本编程》一书中的第1章,第1.3节,作者:【美】Paul A. Zandbergen著,更多章节内容可以访问云栖社区“异步社区”公众号查看
1.3 脚本语言和程序语言
面向ArcGIS的Python脚本编程
Python作为一门程序语言,也常被称为脚本语言。那么,两者的区别在哪里呢?一般而言,脚本语言用于控制其他应用程序以实现任务自动化;而程序语言则是用于开发结构复杂、功能完备的应用程序。脚本语言是一种“粘合剂”,它可以将不同的组件组合在一起,从而实现新的功能。而系统语言既可以从头构建组件,也可以将组件组装成不同的应用程序。系统语言(例如C++和.NET)通过计算机的低级图元和原始资源从头开始创建应用程序。脚本语言(例如Python和Perl)使用计算机内置的高级函数并且回避了系统编程语言必须处理的一些细节。
以Esri为例,他们主要使用C++语言开发ArcGIS软件。在ArcGIS软件中,所有的组件或对象被称为ArcObjects。利用C++既可以新建一个对象,也可以开发一个含有ArcObjects对象的应用程序。利用Python则既可以访问ArcGIS现有的功能,也可以通过组合相关函数来扩展ArcGIS的功能。
Python既是一种脚本语言也是一种程序语言。与C++相比,Python并不用于底层开发,而是用来完成一些相对简单的脚本编程或一些高级程序设计项目。本书将重点介绍如何编写脚本来控制ArcGIS软件执行任务。虽然Python也可以用于应用程序的开发,但是本书并不介绍这方面的内容,而是介绍如何通过Python调用ArcGIS中现有的函数。