二十世纪四十年代当计算机刚刚问世的时候,程序员必须手动控制计算机。当时的计算机十分昂贵,唯一想到利用程序设计语言来解决问题的人是德国工程师楚泽(konradzuse)。不久后,计算机的价格大幅度下跌,而计算机程序也越来越复杂。也就是说,开发时间已经远比运行时间来得宝贵。于是,新的集成、可视的开发环境越来越流行。它们减少了所付出的时间、金钱(以及脑细胞)。只要轻敲几个键,一整段代码就可以使用了。这也得益于可以重用的程序代码库。随着c,pascal,fortran,等结构化高级语言的诞生,使程序员可以离开机器层次,在更抽象的层次上表达意图。由此诞生的三种重要控制结构,以及一些基本数据类型都能够很好的开始让程序员以接近问题本质的方式去思考和描述问题。随着程序规模的不断扩大,在60年代末期出现了软件危机,在当时的程序设计模型中都无法克服错误随着代码的扩大而级数般的扩大,以至到了无法控制的地步,这个时候就出现了一种新的思考程序设计方式和程序设计模型-----面向对象程序设计,由此也诞生了一批支持此技术的程序设计语言,比如eiffel,c++,java,这些语言都以新的观点去看待问题,即问题就是由各种不同属性的对象以及对象之间的消息传递构成。面向对象语言由此必须支持新的程序设计技术,例如:数据隐藏,数据抽象,用户定义类型,继承,多态等等。
下面这张图片描绘了整个编程语言的历史。包括各种编程语言的发明人,编程语言的特点和适用领域,被什么网站或公司使用等。
编程语言发展的编年史:
1951 – Regional Assembly Language
1952 – Autocode
1954 – IPL (LISP语言的祖先)
1955 – FLOW-MATIC (COBOL语言的祖先)
1957 – FORTRAN (第一个编译型语言) 1957 – COMTRAN (COBOL语言的祖先)
1958 – LISP 1958 – ALGOL
1959 – FACT (COBOL语言的祖先) 1959 – COBOL 1959 – RPG
1962 – APL 1962 – Simula 1962 – SNOBOL
1963 – CPL (C语言的祖先)
1964 – BASIC 1964 – PL/I 1966 – JOSS
1967 – BCPL (C语言的祖先)
1968 – Logo
1969 – B (C语言的祖先) 1970 – Pascal 1970 – Forth
1972 – C 1972 – Smalltalk 1972 – Prolog
1973 – ML
1975 – Scheme
1978 – SQL
1980 – C++ (既有类的C语言,更名于1983年7月)
1983 – Ada
1984 – Common Lisp 1984 – MATLAB
1985 – Eiffel 1986 – Objective-C
1986 – Erlang
1987 – Perl
1988 – Tcl 1988 – Mathematica
1989 – FL
1990 – Haskell
1991 – Python 1991 – Visual Basic
1993 – Ruby 1993 – Lua
1994 – CLOS (ANSI Common Lisp的一部分)
1995 – Java 1995 – Delphi (Object Pascal) 1995 – Java 1995 – PHP
1996 – WebDNA
1997 – Rebol 1999 – D
2000 – Action
2001 – C# 2001 – Visual Basic .NET
2002 – F# 2003 – Groovy
2003 – Scala
2007 – Clojure
2009 – Go
2011 – Dart