编程语言可分为编译语言和解释语言两大类。使用编译语言编写的程序,需要把整个程序编译成执行文件后才能运行;使用解释语言编写的程序,在程序运行时,逐条执行语句,一边解释(转换成机器指令)一边执行。
网络程序所用的高级编程语言可分为编译语言、编译型解释语言、脚本语言和标记语言4类。后两者都属于解释语言。这里把半编译半解释的编程语言称为编译型解释语言。每种编程语言都有很多开发工具支持,如微软公司的可视化集成开发环境Visual Studio等。
1.编译语言
使用编译语言编写程序需要经过编辑、编译、链接、执行几个过程。编辑就是在开发工具里写入程序源代码。编译是生成目标代码文件(.obj),目标代码由机器指令或接近于机器语言的代码组成,目标文件包含目标代码和重定位等信息。链接是把多个目标文件和库函数合并成一个执行文件(.exe)。链接可分为两种:编译时的静态链接和运行时的动态链接。静态链接时把函数库(.lib文件,静态链接库)和过程代码一起放在执行文件中,动态链接仅在程序运行时才把函数代码(.dll文件,动态链接库)调入内存执行。静态链接的程序比较庞大,但只有一个.exe文件。动态链接的程序比较小,但在其他计算机上运行时需要安装相应的.dll文件。
在网络编程中常使用的编译语言有C、C++、Delphi、PowerBuilder等。
C语言是一种面向过程的编程语言,它是最受欢迎和最持久的编程语言。C语言的最大特点是具有强大的底层控制能力,直接对硬件编程。在嵌入式系统中,常使用KeilC编写与上位机(计算机)的通信程序。
C++语言可看做是面向对象版的C语言,是对C语言的扩展。C++广泛应用于计算机科学的各个领域。本章所有编程实例都是使用C++编写的。
Delphi是Borland(2009年被Micro Focus收购)公司开发的面向对象的可视化编程语言和软件开发工具。Delphi的前身是面向过程的Pascal语言。
PowerBuilder(PB)完全按照客户机/服务器体系结构研制设计,采用面向对象和可视化技术,适合开发网络数据库应用程序。
2.编译型解释语言
编译型解释语言采用先编译再解释的执行方式,先把程序的源代码编译成中间代码文件(这些中间代码不是可执行代码),然后在运行时再根据中间代码文件的内容解释执行。这种语言一般认为是解释语言,但其拥有者常称之为编译语言。从程序员编程角度来看,它们的表现更靠近编译语言而不是靠近脚本语言。在网络编程中常用的编译型解释语言有Java、C#、VB等。
Java语言是一种完全面向对象的语言,最大特点就是平台无关性,几乎所有平台都支持Java,号称“一次开发,到处运行”,即只需要开发一次就能在所有安装了Java解释器的系统上运行。
C#(读做“C sharp”)是微软开发的一种编程语言,语法、运行原理与Java类似。C#是专门为.NET平台开发的语言,应用平台受到限制,目前只有Windows和Linux支持C#。
VB(Visual Basic)是微软开发的基于BASIC的可视化程序设计语言。BASIC是典型的解释语言,VB可编译,但编译后的代码不是执行代码。(www.daowen.com)
3.脚本语言
脚本语言是典型的解释语言,不需要编译,以文本形式存在,可以直接用,由解释器来负责解释。早期的脚本语言被称为批处理语言或作业控制语言。脚本语言通常都有简单、易学、易用的特性,和其他语言编写的程序组件之间通信功能很强大。
操作系统通常提供一些默认的脚本语言,交互式地解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令,即通常所谓的shell脚本语言,如批处理文件.BAT。
目前主要的脚本语言有:JavaScript、PHP、Python、Perl、Ruby、VBScript等。
JavaScript是一种基于对象和事件驱动并具有安全性能的脚本语言。JavaScript常用于Web客户端的程序开发,它是通过嵌入在HTML语言中实现的,目的是与HTML一起在一个Web页面中实现链接多个对象。JavaScript和Java是两种不同的语言,尽管从名称来看有些相似,但实际上JavaScript和Sun公司推出的Java编程语言毫无关系,它是Netscape推出的。当Java被捆绑到当时处于优势地位的Netscape浏览器上时,为了在Netscape和Sun之间建立市场合作关系,Netscape公司把这门语言的名称从LiveScript改成了JavaScript。
PHP(超文本预处理语言)是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格类似于C语言,支持几乎所有流行的数据库和操作系统。PHP是免费的、开放源代码的,适合那种要求建站速度很快的网站,如论坛。与同样是嵌入HTML文档的脚本语言JavaScript相比,PHP在服务器端执行,充分利用了服务器的性能。
Perl(实用摘录和报告语言)允许建立面向对象的程序,也可以进行网络操作(如socket等)。Perl最初的目标是帮助UNIX用户完成一些常见的任务,现在可以运行于几乎所有操作系统下。
Ruby与Perl相似,在网络编程时通常使用Ruby on Rails(简称RoR或Rails),它结合了Ruby语言与Rails平台的开源网络应用框架,它是严格按照MVC结构(模型-视图-控制器,它提供了一种按功能对各种对象进行分割的方法)开发的。Web3.0的开发也可用Ruby。
VBScript是Visual Basic的脚本语言版本,是ASP的默认语言。VBScript既可以作为客户端编程语言,也可以作为服务器端编程语言。
4.标记语言
标记语言是指用一系列约定好的标记对电子文档进行描述,实现对电子文档的语义、结构、格式的定义。标记语言算不上编程语言,但它是Web编程的基础。最常用的标记语言有HTML和XML。
HTML(超文本标记语言)用于描述超文本文档,所谓超文本就是不仅包含文本还包含图片、声音、动画、影视等内容。HTML是WWW的通用语言,网页就是HTML编写的,在IE浏览器中点击“查看→源文件”就可以看到每个网页的HTML文档内容。HTML是文本形式,也可用可视化工具软件如Frontpage、Dreamweaver等来编写HTML文档。
XML(可扩展标记语言)用来描述数据,其焦点是数据的内容,HTML用来显示数据,其焦点是数据的外观。XML可看做是一种元语言,可用于定义新的标识语言。HTML可看做是XML的具体应用。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。