编程的语言分类

编程的语言分类
一、 Pascal 语言:  
Pascal
是一种计算机通用的高级程序设计语言,由瑞士 Niklaus Wirth 教授六十年代末设计并创立的。  
Pascal
的主要特点有:严格的结构化形式、丰富完备的数据类型、运行效率高、查错能力强等特点。  
由于上述特点, Pascal 可以方便用于描述各种算法和数据结构。对于程序设计的初学者, Pascal 语言有益于培养良好的程序设计风格和习惯。 IOI (国际奥林匹克信息学竞赛)把 Pascal 语言作为三种程序设计语言之一。 NOI (全国奥林匹克信息学竞赛)把 Pascal 语言定为唯一提倡的程序设计语言,在大学中 Pascal 语言也常常被用作学习数据结构与算法的数学语言。  
二、 C 语言:  
C
语言是介于汇编语言和高级语言之间的语言,属于高级语言,也称为中级语言,是集汇编和高级语言优点于一身的程序设计语言。于 1972 年在美国贝尔实验室里问世。早期的 C 语言主要用于 UNIX 系统。由于 C 语言的强大功能和各方面的优点逐渐为人们认识,到了九十年代, C 语言开始进入其他操作系统,并很快在各类大、中、小和微型计算机上得到广泛的应用。成为当代最优秀的程序设计语言之一。  
C
的特点  
1
  是一种结构化语言。层次清晰,便于按模块化方式组织程序,易于调试和维护。  
2
 C 语言的表现能力和处理能力极强。不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构,它还可以直接访问内存的物理地址,进行位级别的操作。  
3
  由于 C 语言实现对硬件的编程操作,所以既可用于系统软件的开发,也适合于应用软件的开发。 C 语言还具有效率高,可移植性强等特点。因此广泛地移植到了各类计算机上,从而形成了多种版本的 C 语言。  
4
  由于 C 语言允许直接对位、字节和地址进行操作,能实现汇编语言的大部分功能。  
5
  目标代码质量高,程序执行效率高。  
总体上来说, C 语言的优点是简洁、紧凑、使用方便、灵活、易于学习和应用。仅有 32 个关键字。 9 种控制语句,程序的书写形式也很自由。  
C
语言的弱点:非强类型;语法限制不严格,使得编程者无法过多地依赖 C 编译程序去查错;缺少实时检查,如数组越界等。  
从严格上来说, C 语言是块结构语言,这是因为它在结构上类似于 ALGOL Pascal Modula-2 。从技术上讲,块结构语言允许在过程和函数中定义过程和函数。因为 C 语言不允许在函数中定义函数,所以不能称为通常意义上的块结构语言。  
C
语言作为一门面向过程的计算机语言,至今已有三十多年历史,应用广泛,无论是 Windows 还是 Linux ,你所看到的底层都是用 C 写的。大部分的网络协议也都是用 C 实现的。你看到的最漂亮的游戏画面也是用 C 实现的,工业控制程序也是用 C 实现的。不过 C 不是万能,只是某些方面它适用而已。  
三、 C ++语言  
C
++是于 1986 年由 AT&T 贝尔实验室开发的,语言开发的目的在于通过数据封装减少程序变量的副作用,从而降低程序的复杂性并提高程序的可靠性。(笔者曾经听到的开发 C ++的目的是由于懂得 C 语言的人越来越多,所以需要再出一门更难的、比 C 语言强大的语言,才能保住饭碗, so C ++出世啦) C ++是 C 语言的直接扩展, C ++的多继承机制能更好地描述对象的属性和行为。  
C
++是 C 的扩展,但 C ++可以作为一种全新的语言来看。  
C++
的特点:面向对象、继承、封装、多态性。  
由于 C ++是 C 的扩展,所以也具有 C 的特点。  
C
++在 C 的基础上,加入了面向对象编程思想,也就决定了 C ++的效率在某一方面是不如 C 的。比如定义一种类型, C ++用类( Class )来封装,而 C 可能就直接几个变量的组合就成了一个结构体( Struct ),类不仅具有成员变量,还具有成员函数等,在精细的比较其效率时, C 会比 C ++的效率要高。但由于时代的发展,项目或工程的庞大化,基于面向对象的思想显然更能适应。即 C ++在这方面能比 C 要做得更漂亮。现在不少系统级编程都是用 C ++实现,许多应用级别的软件也是用 C ++实现。
  这里要注意一点,就是 C ++并不是完全的面向对象语言。它是提供了面向对象的模型以及思路,但是同时兼容了面向过程的模型。  
四、 Java 语言  
Java
语言来自于 Sun 公司的一个叫 Green 的项目,其原先的目的是为家用消费电子产品开发一个分布式代码系统,这样我们就可以把 email 发给电冰箱、电视机等家用电器。对他们进行控制和信息交流。开始,准备用 C ++,但 C++ 太复杂,安全性差,最后用一种新的语言 Oak Java 的前身), Oak 是一种用于网络的精巧而安全的语言, Sun 公司曾依此投标一个交互式电视项目,但被 SGI 打败。可怜的 Oak 几乎无家可归,恰巧这时 Mark Ardreesen 开发的 Mosaic Netscape 启发了 Oak 项目组成员,他们用 (Java) 编制了 HotJava 浏览器,得到了 Sun 首席执行官 Scott McNealy 的支持,触发了 Java 进军 Internet Java 的取名有一段趣闻:有一天,几位 Java 成员组的会员正在讨论给这个新的语言取什么名字,当时他们正在咖啡馆喝着 Java (爪哇)咖啡,有一个人灵机一动说就叫 Java 怎样,得到了其他人的赞赏,于是, Java 这个名字就这样传开了。  
Java
的特点:  
1
  简单性:风格类似于 C++ Java 摒弃了 C++ 中容易引发程序错误的地方,如指针和内存管理。  
2
  面向对象: Java 是一种完全面向对象语言。从这点来看, Java 类似于 SmallTalk ,但其特性、尤其是适用于分布式计算环境的特性远远超越了 SmallTalk  
3
  分布式: Java 包括一个支持 HTTP FTP 等基于 TCP/IP 协议的子库。因此, Java 应用程序可凭借 URL 打开并访问网络上的对象,其访问方式与访问本地文件系统几乎完全相同。  
4
  健壮: Java 致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早期出现的错误。 Java 自己操纵内存减少了内存出错的可能性。  
5
  结构中立: Java 将程序编译成一种结构中立的中间文件格式。只要有 Java 运行系统的机器都执行这种中间代码。这种中间语言被设计在虚拟机上运行,由机器相关的运行调试器实现执行。  
6
  安全:  
1
)删除了香指针和手动释放内存等功能,避免了非法内存操作。  
2
)当 Java 用来创建浏览器时,语言功能和浏览器本身提供的功能结合起来。  
Java
在机器上执行前,要经过很多测试,它经过代码校验,检查代码段的格式,检测指针操作,对象操作是否过分以及试图改变一个对象的类型。  
7
  可移植的:同体系结构无关的特性使得 Java 应用程序可以在配备 Java 解释器和运行环境的任何计算机系统上运行。任何 Java 代码会被解释成一种中间语言,然后通过不同机子的特定环境(如机器指令)运行程序。实现方便移植的特点。  
8
  解释性。 Java 解释器能直接运行目标代码指令。链接程序通常比编译程序所需资源少。  
9
  高性能。如果解释器速度不慢, Java 可以在运行时直接将目标代码翻译成机器指令。 Sun 用直接解释器一秒钟内可调用 300,000 个过程。  
10
  多线程: Java 提供的多线程功能使得在一个程序里可同时执行多个小任务。多线程带来的更大好处是更好的交互性能和实时控制性能。  
11
  动态:动态特性允许程序动态地装入运行过程中所需要的类。在运行时确定引用的好处是可以使用已被更新的类,而不必担心会影响原有的代码。如果程序连接了网络中另一系统中的某一类,该类的所有者也可以自由地对该类进行更新,而不会使任何引用该类的程序崩溃。  
Java
在诞生之后不久,便受到广大群众的欢迎,甚至有人说出有了 Java ,可以不要 C/C++ 了。一度把 Java 提到了很高的地位。这当然是对 Java 的一种赞赏,只是有点过了。到今天, Java 依然不能取代 C C++ ,而且还出现了新的对手 �D�D.Net (后面将会介绍)。  
Java
目前主要应用: Web 浏览器、网络应用系统。  
五、 C# 语言。  
C#
是一种精确、简单、类型安全、面向对象的语言。说到 C# ,就不得不先简单介绍一下 .net 。到底什么是 .net 呢,按照微软总裁兼首席执行官 Steve Ballrner 把它定义为: .Net 代表一个集合,一个环境,它可以作为平台支持下一代 Internet 的可编程结构。 C# .net 的代表语言。  
C#
的特点:  
1. 
完全面向对象。  
2. 
支持分布式,之所以有 C# ,是因为微软相信分布式应用程序是未来的趋势,即处理过程分布在客户机和服务器上。所以 C# 一出生就注定了能很好解决分布式问题。  
3. 
Java 类似, C# 代码经过编译后,成为了一种 IL (中间语言)。在运行时,再把 IL 编译为平台专用的代码。  
4. 
健壮, C# 在检查程序错误和编译与运行时错误一点也不逊于 Java C# 也用了自动管理内存机制。  
5. C#
不像 Java 那样完全摒弃了指针和手动内存管理。 C# 默认情况下是不能使用指针的,程序员在有必要时可以打开指针来使用。这样可以保证编程的灵活性。  
6. 
安全性: C# 的安全性是有 .net 平台来提供的。 C# 代码编译后成为 IL 语言。是一种受控代码, .net 提供类型安全检查等机制保证代码是安全的。  
7. 
可移植性:由于 C# 使用类似 Java 的中间语言机制。使得 C# 也跟 Java 类似,可以很方便的移植到其他系统。在运行时,再把中间代码编译为适合特定机器的代码。  
8. 
解释性: C# 也是一种特殊的解释性语言。  
9. 
高性能: C# 把代码编译成中间语言后,可以高效的执行程序。  
10. 
多线程:与 Java 类似,可以由一个主进程分出多个执行小任务的多线程。  
11. 
组件模式: C# 很适合组件开发。各个组件可以由其他语言实现的,然后集成在 .net 中。  
C#
是在 Java 流行起来后所诞生的一种新的语言。由于微软在操作系统上占有很大的优势。在以往的开发中累积了不少经验,所形成的 .net 平台,所以 C# Windows 方面可以说比 Java 具有更大的优势。如果单纯从技术上来讲, C# 在网络编程上可以与 Java 匹敌。 C# 还在 Windows Forms 也有一定的优势。  
C#
是一种非常类似于 C++ 的语言,风格是更接近于 Java ,不管是 C++ 程序员还是 Java 程序员,都可以很方便的转到 C# 上来。  
C#
的强大是依赖于 .net 的发展,而 .net 的发展是看微软在 .net 上的决心和投入有多少。从 Windows 2003 Vista 系统可以看出(前者内置 .net1.1 ,后者内置 .net2.0 。) .Net Windows 编程中具有重要的战略意义。  
C#
目前主要是应用在网络编程上,其他领域比如数据库、窗体编程,都逐渐在增大

你可能感兴趣的:(编程,职场,休闲)