脚本语言与编程语言

我们熟知的编程语言主要包括

机器语言即纯粹的机器

汇编语言:8086汇编、Win32汇编、.NET的汇编

以及高级语言Basic、Pascal、Object Pascal、C、C 、C#、Java

同时也有很多人认为学习前端只需要按照设计像砌积木一样堆代码,一些动态设计完全是网上拷贝的代码,完全没有涉及算法和数据结构,也算不上编程。
HTML严格来说不算编程语言,毕竟这只是标记语言,但关于JavaScript却不能这样,到底JavaScript算不算严格意义的编程语言呢?

严格来说脚本语言(JavaScript,VBscript等)介于HTML和C,C++,Java,C#等编程语言之间。

由百科可以知道·

脚本语言(Script language,scripting language,scripting programming language)是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言。此命名起源于一个脚本“screenplay”,每次运行都会使对话框逐字重复。早期的脚本语言经常被称为批量处理语言或工作控制语言。一个脚本通常是解释运行而非编译。脚本语言通常都有简单、易学、易用的特性,目的就是希望能让程序员快速完成程序的编写工作。而宏语言则可视为脚本语言的分支,两者也有实质上的相同之处。虽然许多脚本语言都超越了计算机简单任务自动化的领域,成熟到可以编写精巧的程序,但仍然还是被称为脚本。几乎所有计算机系统的各个层次都有一种脚本语言。包括操作系统层,如计算机游戏,网络应用程序,字处理文档,网络软件等。在许多方面高级编程语言和脚本语言之间互相交叉,二者之间没有明确的界限。

脚本语言(Scripting language)是电脑编程语言,因此也能让开发者藉以编写出让电脑听命行事的程序。以简单的方式快速完成某些复杂的事情通常是创造脚本语言的重要原则,基于这项原则,使得脚本语言通常比 C语言、C++语言 或 Java 之类的系统编程语言要简单容易,也让脚本语言另有一些属于脚本语言的特性:    

语法结构通常比较简单

* 学习和使用通常比较简单

* 通常以容易修改程序的“解释”作为运行方式,而不需要“编译”

* 程序的开发产能优于运行效能一个脚本可以使得本来要用键盘进行的相互式操作自动化。

一个Shell脚本主要由原本需要在命令行输入的命令组成,或在一个文本编辑器中,用户可以使用脚本来把一些常用的操作组合成一组串行。主要用来书写这种脚本的语言叫做脚本语言。很多脚本语言实际上已经超过简单的用户命令串行的指令,还可以编写更复杂的程序。

在知乎中同样进行了相似的讨论

同时很多人对待前端总是想当然地认为,前端没有多大深度,误以为不会涉及算法、数据结构,甚至嘲讽前端所做的工作只是一个附属工作

由网友的评论:javascript绝对是图灵完备的,但我更想说的是,我们就没必要纠结于XXX是不是一门编程语言这样的问题。

存在的,就是有价值的。是否严格,要从人性的角度来看待的。你对自己要求严格,不管你用强类型语言还是弱类型语言,都是可以写成所谓的“严格意义”的编程语言的味道来。对自己代码要求不严格的不严谨的,硬是把强类型语言整成弱类型,让人没法觉得该语言是“严格意义”的也不是没有。其实啊,代码玩到一定深度,前后端的界限就会越来越模糊,只能通过工作职责来划分前端后端。而具备从后端一直干到前端,甚至切图的大前端,绝对是现在市面上紧缺的,几乎所有的知名或不知名的互联网公司都想找的顶级前端coder。

好吧,扯远了,上面这些并不是为了割裂前后端,只是想说明前端要做到有深度,一些不把javascript不当编程语言的同学,能从理性一些的、现代一点的视角看待前端开发,而不只是还停留在想当然的原地。

前端开发已经不是刀耕火种的年代了,前端已经进入了自动化、现代化的阶段,而javascript的生产力已进化到前端、后端都能胜任的阶段了。

而做前端开发的,请不要对前端这个工种妄自菲薄,它也一样很有深度——只要你有兴趣并坚持 。

因此我们无需纠结于脚本语言更不能轻易看不起前端的学习。

猜你喜欢

转载自www.cnblogs.com/kongbai-lacie/p/10726266.html