要解释这个问题,首先要理解“程序”这两个字,可以理解为:过程、次序,也就是指令序列。顾名思义,所谓编程语言,就是能编写程序的语言,所以它的最终输出一定是计算机能执行的指令序列。计算机中,执行指令的地方是CPU,如C语言、Java、JS这些,都有最终能向CPU发送指令的代码。
而HTML(超文本标记语言),只是写了一段放在存储器里的文本文件,它本身里面的内容并不是描述CPU要执行什么动作,而是根据HTML的规范写的一段格式化的文本,供提取它的那个部件(对HTML来说通常就是浏览器)按照规范(我的理解就是一种协议)来进行渲染,通过这种方式生成便于人类阅读的电子文档;其中CSS就负责描述渲染成什么样子,比如颜色、大小、形状等等,从这个角度理解,CSS和HTML称不上是编程语言,类似的文本标记语言还有XML、Latex等等。一段HTML放在计算机里,甚至可以理解为doc文档,都是需要用特殊的程序来解释,才能呈现出最终用户想要看到的形式。
JavaScript和SQL不仅仅是编程语言了,而且是重要的编程语言,从最近TIOBE排行榜也可以看出来,二者都在前十名了。
JavaScript是浏览器端最重要的编程语言,特别是进入web2.0时代以后,页面的逻辑、交互、请求都是靠JavaScript来完成,但是不要以为JavaScript只可以做客户端开发,它也是可以做服务端开发的,特别是由于天生具有异步性的特点,可以开发出性能非常高的服务端程序,有兴趣可以去了解下node.js。
SQL,结构化查询语言(Structured Query Language),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
学习建议:
关于JavaScript,我建议你看着三本书,看明白之后,自然知道下一步学什么了。
《JavaScript高级程序设计》这本书至少看两遍,入门必备。
道格拉斯这本书比较极端,但无论如何一定要认真读几遍,慢慢品味,慢慢理解。
异步几乎是JavaScript世界里最重要的执行机制之一了,也不厚,很容易读完,但不一定能一遍读懂。
关于SQL,我也是半瓶子醋,推荐你几本名著看看:
纯初学者推荐图灵出的《SQL必知必会(第4版)》,写得很明快,概念非常清楚。这本书用来学习关系型数据库也很不错,至少基本概念比大部头的教材说得清楚得多。