脚本语言是用于自动执行某些任务的编程语言
像演员一样,脚本语言会做任何你告诉它的事情。您可以执行自动调用某些程序或对文件执行相同操作的操作。
如果您厌倦了在计算机上进行鼠标移动并反复做同样的事情或想要为Web构建应用程序,您可能需要查看可用的各种脚本语言。好消息是它们相对容易学习,至少就编程语言而言。另外,因为他们可以自动执行重复性任务,所以花在学习它们上面的时间确实可以带来回报。
脚本历史
脚本与计算机一样长。实际上,脚本是早期使用计算机的唯一方法。在20世纪50年代和60年代,程序员提交的穿孔卡片到主机运营商,而机器运行批处理模式。IBM的工作控制语言(JCL)通常被认为是最早的脚本语言之一。但是虽然脚本语言功能正常,但它们的响应时间并不像现代计算机那么快 - 它通常需要至少一天才能获得结果!
当交互式分时系统在20世纪60年代开始开发时,可编写脚本的shell的想法付诸实践。其中最早的是MULTICS项目。当一些贝尔实验室程序员退出项目时,他们决定实施他们自己的系统,他们称之为UNIX。Unix shell中的一项创新是能够将一个程序的输出发送到另一个程序的输入中,从而可以在一行shell代码中执行复杂的任务。Unix世界中也有其他脚本语言,例如AWK和Sed,用于处理文本。
另一种主要的脚本语言Perl是由Larry Wall于1987年发明的,并且在90年代用于创建Web应用程序的万维网热潮中变得流行。其他语言,如Python和Ruby,也随之而来。我们稍后会仔细研究其中的一些。(了解更多关于计算机编程中编程语言的历史:从机器语言到人工智能。)
脚本的使用
如何使用脚本语言的典型示例是重命名大量文件。这些语言可以通过通配符模式轻松查找与某些名称匹配的文件,并包括复制,重命名和删除文件或以文件名作为参数运行程序的操作。
如前所述,脚本语言的另一个主要用途是开发Web应用程序。使用这种方式的脚本语言确实利用了他们快速的应用程序开发能力。它们没有使用像C,C ++或Java这样的语言那么快,但是由于摩尔定律,处理能力稳步提高,最好是节省程序员时间而不是计算机时间。由于这些语言的运行水平非常高,因此开发人员不必担心管理内存,这是错误和延迟的另一个来源。这意味着与系统语言相比,单个程序员可以使用脚本语言开发功能更强大的应用程序。
潜水深度:脚本的严肃应用
由于许多脚本语言都是完善的编程语言,因此如果您想要这样做,您可以创建完整的应用程序。这样做的最大好处是,如果你有一个想法,而不是等待你的程序编译,你可以敲出一些代码并获得结果。当然,当不可避免的错误和错误蔓延时,也很容易修复你的程序。这允许快速应用程序开发和软件的快速原型设计。这在网络上很有价值,初创公司必须快速添加新功能以保持领先于竞争对手。
脚本语言通常区别于“系统编程”语言,例如C.计算机科学家John Ousterhout(他自己是流行脚本语言TCL的创建者)在1998年发表在IEEE计算机杂志上的文章中将这些类别称为着名的Ousterhout的系统和编程语言之间的二分法。系统语言的编译和设计旨在实现最高效率,同时解释脚本语言,并将其“粘合”在一起。实际上,脚本语言通常被称为“粘合语言”。
但是,程序员不一定要在使用系统语言和脚本语言之间做出选择。通常在用系统语言重写部分或全部应用程序之前,先用脚本语言实现初始想法,以提高性能。脚本语言为草图板为雕刻师执行的程序员提供相同的角色。
为什么选择脚本?
从系统管理员到专业程序员和专用计算机爱好者的技术计算机用户使用脚本语言只是因为他们节省了大量时间。学习曲线比其他语言浅很多,这使得人们可以快速提高工作效率,而无需处理开发/编译/调试周期。这使他们自由地将苦差事自动化并处理真正重要的事情。
脚本语言综述
下面是今天使用的各种脚本语言:
Unix Shell:Unix和Linux世界中最原始的脚本语言之一,仍然是处理文件和程序的不错选择。Linux世界中的“标准”是Bash,或Bourne Again shell。(这是20世纪70年代在AT&T开发的Bourne shell上的一个剧本。)(更多信息,请查看Unix / Linux Shell 101。)
Perl:另一个受欢迎的选择。Perl安装在许多系统上,尤其是Unix和Linux系统。它的粉丝喜欢它的灵活性。Perl社区中一个流行的说法是“有不止一种方法可以做到”,通常缩写为TMTOWTDI。Perl被称为在互联网热潮中在服务器上运行Web应用程序的一种方式,它的无处不在使其被称为“互联网的胶带”。
Python:Perl的主要竞争对手之一。然而,Python社区以其干净,可读的代码而自豪。
Ruby:因其在网络上的使用而受到关注,尤其是为Twitter等网站提供支持的Ruby on Rails框架。
PHP:也在网上大量使用,因为它与HTML集成得非常好。但是,它也因制作凌乱的代码而闻名。
Powershell:微软在Windows世界中的最新脚本语言,允许管理员和高级用户自动执行任务。
夺回权力
如果您觉得您的计算机使用的是您而不是相反,那么为什么不通过使用脚本语言自动化您的工作来获得一些控制权?或许您想进入令人兴奋的Web开发世界?如果是这样,学习一种或多种这些语言将使编程世界成为你的牡蛎。