找回密码
 立即注册
搜索
查看: 355|回复: 11

软件世界的历史过程

[复制链接]

340

主题

3478

回帖

5028

积分

网站编辑

积分
5028
发表于 2004-5-21 11:58:18 | 显示全部楼层 |阅读模式
Borland 的历史

1981年8月,3个丹麦人Danish citizens, Niels Jensen, Ole Henriksen, and Mogens Glad在爱尔兰创建了一个小公司Borland(Both Import and Export of Irland --Bear)。公司第一个产品是MenuMaster。Philippe Kahn 是Borland在美国的第一个雇员。1983年5月2日,Philippe Kahn在美国建立了Borland International,为CEO。

1982年,Philippe Kahn带着3000美元从巴黎到了美国,除去机票钱已所剩无几,只好租人家的车库小阁间住。kahn在硅谷干了一段时间,并以mit(market in time,恰好与麻省理工学院的缩写相同)为名开了一家公司。1983年,kahn和anders hejlsberg(丹麦人,turbo pascal编译器的主要作者)合作开发了turbo pascal,并赊帐在《新闻周刊》上登了一份彩页广告。turbo pascal在pc开发工具中是一个里程碑式的产品,它第一次把编译时间由分缩短到秒,并且其$49的价格在当时也是创纪录的(当时的一份编译器动辄数千美元,便宜的也要几百美元,还不好用)。Turbo Pascal在不到两年的时间里销
售了超过130万套(考虑到当时的pc数量,这是一个非常惊人的数字),Borland从此创立。kahn在解释为什么以Borland命名时说“我们要起一个与众不同的名字,其他公司都是叫这个micro,那个soft什么的”。不过据认为这个名称与德国或北欧的某些地名有关 (Kahn的父亲是德国人,而且Borland的很多开发人员是北欧人)。

      
   Anders Hejlsberg ,丹麦人,曾在丹麦技术大学学习工程。当时Anders Hejlsberg 有个公司叫Poly Data在丹麦,他编写了Pascal编译器核心,最初叫Compass Pascal,后来叫Poly Pascal。Anders把该编译器核心授权给了Borland。Anders作为雇员加入公司,并且是后来所有Pascal版本与Delphi前3个版本的架构师。Kahn为Pascal添加了用户界面与编辑器。

340

主题

3478

回帖

5028

积分

网站编辑

积分
5028
 楼主| 发表于 2004-5-21 12:00:49 | 显示全部楼层
1983年11月20日 Turbo Pascal version 1.0发布 著名的Tubo Pascal随即风靡世界。
    1986年09月17日 Turbo Pascal version 3.02 发布 支持Intel 8087数学协处理器
    1989年05月02日 Turbo Pascal version 5.5 发布 面向对象Pascal
    1989年05月11日 Turbo C version 2.01 发布 C语言开发集成环境,你还记得吗?:)
    1991年02月28日 Turbo C++ version 1.01 发布 著名的C++语言开发集成环境
    1991年后期,Borland发布Borland C++ 1.0
    1993年 Borland发布著名的Borland C++ 3.1,当时微软为MS Visual C++ 1.0  
      
    1991年至1994年,Borland 仍然是Windows平台上最好的C++编译器厂商。10年辉煌岁月。
回复

使用道具 举报

340

主题

3478

回帖

5028

积分

网站编辑

积分
5028
 楼主| 发表于 2004-5-21 12:02:15 | 显示全部楼层
1992年Borland C/C++的产品经理Eugene Wang,是一位中国人,因Philippe Kahn而离开Borland,去了Symantec,开发出了著名的Symantec C/C++。这一时期,Philippe Kahn花了一亿多美金建造了Borland在Scotts Valley豪华总部,花了一亿多美金买下了Ashton-Tate公司和dBase(并不值)。同时,Microsoft开始向Borland挖角。稍后Microsoft的Visual C/C++小组有60%的成员是从Borland挖来的(--LiWei)。
      
    1994年06月02日,据华尔街杂志报道Borland在当季度亏损4200万美元,连续3个季度亏损2.2亿美元。公司的股价从1992年1月的86美元跌至9.63美元。
回复

使用道具 举报

340

主题

3478

回帖

5028

积分

网站编辑

积分
5028
 楼主| 发表于 2004-5-21 12:03:40 | 显示全部楼层
1995年02月14日,Delphi1.0发布,号称 VB Killer。获得空前成功,在关键时刻拯救了Borland。
以后几乎每年推出一个新版本。 Delphi 2.0时,编译器后端就改成了用C与汇编来编写,而不是Pascal与汇编。

  刚开始的时候,Delphi是作为Borland公司一个严格保密项目beta版的代号,这个项目基于Borland的Object Pascal语言,是Windows平台上的下一代可视化开发环境。在开发小组经历了6个月的深入研究,概念上的可行性测试及市场分析后,1993年中期这个代号诞生了。当时Pascal开发小组的成员们在R&D(研究与发展部门)经理Gary Whizin的办公室为新产品提出了很多不错的代号。那个办公室不大,开发小组也不大--就R&D,质量管理部,Pubs[不知如何译]和市场部的十来人。Anders Heilsberg, Chuck Jazdzewski, Allen Bauer, Zack Urlocker, Richard Nelson, 我,还有其他一些常客经常在Gary的办公室里讨论这个或那个话题。为新产品起名这件事常常让办公室变得拥挤不堪,人流从办公室延续到走廊上。
    Borlandy一直使用“与众不同”的产品代号,有些和易记的俗语或背景相关,让古怪的名字和市场或产品的重点关联。代号要和产品没有明显的关系,这样就算偷听者听到了对话中提及的代号,也不能很容易地想到所讨论的产品。一个随便可弃的代号和一个好的代号的区别在于后者内在的精髓。最让我难忘的是Quattro Pro 4.0的代号:“佛”,它竟然要占据Lotus的地位![此句双关:佛坐莲花座,而Lotus Position一方面指Lotus公司的地位,一方面指莲花座。此句原文:The most memorable for me was the codename for Quattro Pro 4.0: "Budda". Why? It was to assume the Lotus position!]
    我们在Gary的办公室里呆着,纠缠于各种稀奇古怪的代号。几天前才出台一个战略性的决定--让新的Pascal产品以数据库工具和连接为中心,因此Gary热切希望代号能够突出产品和开发小组在数据库上的新亮点。产品向数据库倾斜不是一件小事,我记得当时对让数据库“玷污”Pascal工具有很大的保留,我用了几乎一年时间才摆脱这种想法。这个倾斜对Borland来说是一次大赌博,不过Borland很小心地权衡,准备和实行它。现在看来,让Delphi成为数据库产品正是Borland的Pascal工具打破VB和C++的市场挤压并让Delphi成为开发工具中翘楚的重要原因。
    Gary老想给产品取名“Oracle”(神使),这样能体现产品与Oracle的SQL连接。然而“Oracle”这个代号不让大家满意。除了与Oracle公司及其数据库服务器产品重名外,这个代号本身暗示其服务器性质,而我们的产品在那时只是用于生成客户端来访问Oracle和其他服务器。
    你怎么样和神使交谈?“Delphi圣殿中的神使”这个词组从我脑袋中崩出来!所以我提出用“Delphi”,意思是:如果你要和神使交谈,到Delphi去(拜访圣殿)吧!
    这个提议不是空穴来风,Delphi是一个古老的名字,是一个历史悠久的地方,是一个逝去的文明遗址上的一座异教徒圣殿。这很难让人理想到一种新产品!就如一些后来发表的文章所指出的,通过Delphi访问神使的方法在某方面声名狼藉--它给出晦涩或有多种含义的答案,并不是数据管理工具的好伙伴。人人都能问神使问题,但是要解释(编译)神使的回答所费不菲(市场部的人们喜欢这一点)。
    然而,总的说来,Delphi这个代号比起办公室里提出的其他各式各样语义双关的名称要经典些。Pascal是一门经典的程序语言,把一个经典的希腊形象和一个基于Pascal的开发工具联系起来要让人觉得舒服些。而且据希腊传说,Delphi的这座圣殿是丑闻惨剧最少的。
    我们在产品的1.0版本开发工程中用了许多代号,在新闻单位和公司简报中出现的beta版产品代号都是虚构出来的。这样我们能够限制传言和追查消息从何泄漏。我们不想让别人知道关于我们目前的产品的一点东西。除了“Delphi”,其他代号都在可以抛弃之列。在开发接近尾声和最终beta版发布的时候,市场部开始在新闻单位和公司简报中用“Delphi”来称呼这个产品。这时传言四起,开发工具圈里都在谈论Borland公司的秘密工程代号“Delphi”。J.D. Hildebrand在Delphi发布前为Windows Tech Journal (Windows开发杂志)写了一系列评论,主题就是“Delphi讨论月”(他在其中解释到:我不能告诉你Delphi是什么,但我可以说它将改变我们的生活)。
    产品要上市时,正式命名的结果让人索然无味。功能性的名字该是AppBuilder,它能够表明产品是什么从而易于销售。事实上AppBuilder已经出现在IDE(集成开发环境)中作为某些内部的类名,比如IDE主窗口的类名(开发部门屈服于功能性命名的要求并且早早着手使用了这个名字)。但是AppBuilder无法激发人的想象力,并且它无法在世界范围内流传--功能性的名字只是对和命名者使用同一语言的用户来说才是功能性的。
    幸亏在Delphi计划发布前,Novell的Visual AppBuilder上市了。在Borland中许多人都感到高兴,因为命名之争终于停息了。因为功能性的名称不在讨论之列了,所以Borland内部越来越多人倾向于用Delphi作为产品的名字。
    但是Delphi这个命名在内部也还是没有得到完全的认同。市场部的头担心这个标志性(而不是功能性)的命名要获取市场承认的话,需要公司付出额外的努力。因为他认为这种担心不无道理,所以他要求在开发小组中进行表决。可是结果只有一票(猜猜是谁?)否决Delphi这个名字。让我们气愤的是,某人得出的结论是开发小组的看法不能准确反映市场的要求(我听到的说法是“样本不对”),于是在beta版测试人员中进行了调查。可是调查结果还是不能让那人满意,于是调查再次扩大了范围,包含了Borland的跨国下属机构,出版社,市场分析家,股票分析师,公司会计,软件零售商甚至包含一些K-Mart购物者[K-Mart shoppers不知作何解]。结果是喜剧:越想不用“Delphi”作为产品名称,“Delphi”越被人接受。
    “Delphi”有经典的意味,同时它在世界范围内在各种语言中有一致的意义,就我所知也在其他语言中也没有让人尴尬的暧昧俗义。最重要的是,市场部的人们成功地让市场期待和讨论的焦点集中在“Delphi”这个名字上。市场对“Delphi”这个东西充满期待。
回复

使用道具 举报

340

主题

3478

回帖

5028

积分

网站编辑

积分
5028
 楼主| 发表于 2004-5-21 12:07:21 | 显示全部楼层
1995年,Borland 与 Microsoft,Symantec,Watcom 的C++之战  ,当时为Borland C++ 4.5。Microsoft VC赢。从此Borland C++产品开始走下坡路。
   1996年10月,Anders在Delphi3发布前离开了Borland。Anders在Delphi3中几乎没有做什么工作,Chuck Jazdzewski扮演了一个更重要的角色。(--Anders Ohlsson)Anders在Borland时把所有精力都放在了Pascal产品上,也需要新的挑战,由于Bill Gates的亲自邀请,并许诺挑战的机会,Anders加入了Microsoft,起薪$3,000,00。果然,在Microsoft,Anders称为VJ++开发中扮演了一个重要的角色,然后是C#的设计者,主要的架构设计师,以及.Net的架构设计师之一。(--Marco Menardi)
      
    Borland在几个产品上都与Microsoft展开了战争般的竞争。结果显而易见。
      
   1997年07月30日, Borland发布JBuilder 1.0,进军Java跨平台开发
      
1998年04月29日,Borland改名为Inprise。准备采用新的战略:Integrate the Enterprise。遭遇失败。
   1999年中,Dale Fuller临危受命,被请来做Borland的CEO。
      
    2000年05月16日,困难重重的Inprise取消与Corel的合并计划。广大Borland开发者联合起来呼吁反对合并。此前,Corel欲收购Inprise,进军Linux。(当时Borland的困境以及计划合并的消息,对于所有的Borland开发者打击很大,不少公司转向微软)
   2000年07月16日,Borland的InterBase数据库OpenSource化
2000年11月08日,Borland把名字从Inrise改回Borland。2001年1月完成。
   Dale Fuller确定新的战略,结束与微软的战争,转为合作关系,同时提出了Made In Borland口号,开始逐渐把Borland带出低谷。 还将一些技术转让给微软,获得2亿美金。  
      
   2001年03月01日,Borland发布Kylix 1.0,进军Linux平台。Kylix本意是古希腊的一种带耳朵的酒杯。
  
  2001年至2002年,Borland陆续收购VMGEAR,StarTeam,Together,CaliberRM等公司及产品,与已有的产品整合,逐步实现构建应用生命周期管理(ALM)的产品战略。
   2003年05月06日,Borland针对.NET发布C#Builder      
   2003年09月15日,Borland发布C++BuilderX      
   2003年10月21日,Borland Launches Next Generation Java Development Environment: Borland JBuilder X

   2003年11月3日,Borland 发布 Delphi 8 for .NET

    2003年11月3日,Borland 发布 Borland Enterprise Studio 7 for Java
回复

使用道具 举报

340

主题

3478

回帖

5028

积分

网站编辑

积分
5028
 楼主| 发表于 2004-5-21 12:09:26 | 显示全部楼层
编程语言的历史

ca. 1946

Konrad Zuse , a German engineer working alone while hiding out in the Bavarian Alps, develops Plankalkul. He applies the language to, among other things, chess.



--------------------------------------------------------------------------------

1949

Short Code , the first computer language actually used on an electronic computing device, appears. It is, however, a "hand-compiled" language.



--------------------------------------------------------------------------------

1951

Grace Hopper , working for Remington Rand, begins design work on the first widely known compiler, named A-0. When the language is released by Rand in 1957, it is called MATH-MATIC.



--------------------------------------------------------------------------------

1952

Alick E. Glennie , in his spare time at the University of Manchester, devises a programming system called AUTOCODE, a rudimentary compiler.



--------------------------------------------------------------------------------

1957

FORTRAN --mathematical FORmula TRANslating system--appears. Heading the team is John Backus, who goes on to contribute to the development of ALGOL and the well-known syntax-specification system known as BNF.



--------------------------------------------------------------------------------

1958

FORTRAN II appears, able to handle subroutines and links to assembly language. John McCarthy at M.I.T. begins work on LISP--LISt Processing.

The original specification for ALGOL appears. The specific ation does not describe how data will be input or output; that is left to the individual implementations.



--------------------------------------------------------------------------------

1959

LISP 1.5 appears. COBOL is created by the Conference on Data Systems and Languages (CODASYL).



--------------------------------------------------------------------------------

1960

ALGOL 60 , the first block-structured language, appears. This is the root of the family tree that will ultimately produce the likes of Pascal. ALGOL goes on to become the most popular language in Europe in the mid- to late-1960s.

Sometime in the early 1960s , Kenneth Iverson begins work on the language that will become APL--A Programming Language. It uses a specialized character set that, for proper use, requires APL-compatible I/O devices.



--------------------------------------------------------------------------------

1962

APL is documented in Iverson’s book, A Pro gramming Language .

FORTRAN IV appears.

Work begins on the sure-fire winner of the "clever acronym" award, SNOBOL--StriNg-Oriented symBOlic Language. It will spawn other clever acronyms: FASBOL, a SNOBOL compiler (in 1971), and SPITBOL--SPeedy ImplemenTation of snoBOL--also in 1971.



--------------------------------------------------------------------------------

1963

ALGOL 60 is revised.

Work begins on PL/1.



--------------------------------------------------------------------------------

1964

APL\360 is implemented.

At Dartmouth University , professors John G. Kemeny and Thomas E. Kurtz invent BASIC. The first implementation is a compiler. The first BASIC program runs at about 4:00 a.m. on May 1, 1964.

PL/1 is released.



--------------------------------------------------------------------------------

1965

SNOBOL3 appears.



--------------------------------------------------------------------------------

1966

FORTRAN 66 appears.

LISP 2 appears.

Work begins on LOGO at Bolt, Beranek, & Newman. The team is headed by Wally Fuerzeig and includes Seymour Papert. LOGO is best known for its "turtle graphics."



--------------------------------------------------------------------------------

1967

SNOBOL4 , a much-enhanced SNOBOL, appears.



--------------------------------------------------------------------------------

1968

ALGOL 68 , a monster compared to ALGOL 60, appears. Some members of the specifications committee--including C.A.R. Hoare and Niklaus Wirth--protest its approval. ALGOL 68 proves difficult to implement.

ALTRAN , a FORTRAN variant, appears.

COBOL is officially defined by ANSI.

Niklaus Wirth begins work on Pascal.



--------------------------------------------------------------------------------

1969

500 people attend an APL conference at IBM’s headquarters in Armonk, New York. The demands for APL’s distribution are so great that the event is later referred to as "The March on Armonk."



--------------------------------------------------------------------------------

1970

Sometime in the early 1970s , Charles Moore writes the first significant programs in his new language, Forth.

Work on Prolog begins about this time.

Also sometime in the early 1970s , work on Smalltalk begins at Xerox PARC, led by Alan Kay. Early versions will include Smalltalk-72, Smalltalk-74, and Smalltalk-76.

An implementation of Pascal appears on a CDC 6000-series computer.

Icon , a descendant of SNOBOL4, appears.



--------------------------------------------------------------------------------

1972

The manuscript for Konrad Zuse’s Plankalkul (see 1946) is finally published.

Denni s Ritchie produces C. The definitive reference manual for it will not appear until 1974.

The first implementation of Prolog -- by Alain Colmerauer and Phillip Roussel -- appears.



--------------------------------------------------------------------------------

1974

Another ANSI specification for COBOL appears.



--------------------------------------------------------------------------------

1975

Tiny BASIC by Bob Albrecht and Dennis Allison (implementation by Dick Whipple and John Arnold) runs on a microcomputer in 2 KB of RAM. A 4-KB machine is sizable, which left 2 KB available for the program.

Bill Gates and Paul Allen write a version of BASIC that they sell to MITS (Micro Instrumentation and Telemetry Systems) on a per-copy royalty basis. MITS is producing the Altair, an 8080-based microcomputer.

Scheme , a LISP dialect by G.L. Steele and G.J. Sussman, appears.

Pascal User Manual and Report , by Jensen and Wirth, is published. Still considered by many to be the definitive reference on Pascal.

B.W. Kerninghan describes RATFOR--RATional FORTRAN. It is a preprocessor that allows C-like control structures in FORTRAN. RATFOR is used in Kernighan and Plauger’s "Software Tools," which appears in 1976.



--------------------------------------------------------------------------------

1976

Design System Language , considered to be a forerunner of PostScript, appears.



--------------------------------------------------------------------------------

1977

The ANSI standard for MUMPS -- Massachusetts General Hospital Utility Multi-Programming System -- appears. Used originally to handle medical records, MUMPS recognizes only a string data-type. Later renamed M.

The design competition that will produce Ada begins. Honeywell Bull’s team, led by Jean Ichbiah, will win the competition.

Kim Harris and others set up FIG, the FORTH interest group. They develop FIG-FORTH, which they sell for around $20.

Sometime in the late 1970s , Kenneth Bowles produces UCSD Pascal, which makes Pascal available on PDP-11 and Z80-based computers.

Niklaus Wirth begins work on Modula, forerunner of Modula-2 and successor to Pascal.



--------------------------------------------------------------------------------

1978

AWK -- a text-processing language named after the designers, Aho, Weinberger, and Kernighan -- appears.

The ANSI standard for FORTRAN 77 appears.



--------------------------------------------------------------------------------

1980

Smalltalk-80 appears.

Modula-2 appears.

Franz LISP appears.

Bjarne Stroustrup develops a set of languages -- collectively referred to as "C With Classes" -- that serve as the breeding ground for C++.



--------------------------------------------------------------------------------

1981

Effort begins on a common dialect of LISP, referred to as Common LISP.

Japan begins the Fifth Generation Computer System project. The primary language is Prolog.



--------------------------------------------------------------------------------

1982

ISO Pascal appears.

PostScript appears.



--------------------------------------------------------------------------------

1983

Smalltalk-80: The Language and Its Implementation by Goldberg et al is published.

Ada appears . Its name comes from Lady Augusta Ada Byron, Countess of Lovelace and daughter of the English poet Byron. She has been called the first computer programmer because of her work on Charles Babbage’s analytical engine. In 1983, the Department of Defense directs that all new "mission-critical" applications be written in Ada.

In late 1983 and early 1984, Microsoft and Digital Research both release the first C compilers for microcomputers.

In July , the first implementation of C++ appears. The name is coined by Rick Mascitti.

In November , Borland’s Turbo Pascal hits the scene like a nuclear blast, thanks to an advertisement in BYTE magazine.



--------------------------------------------------------------------------------

1984

A reference manual for APL2 appears. APL2 is an extension of APL that permits nested arrays.



--------------------------------------------------------------------------------

1985

Forth controls the submersible sled that locates the wreck of the Titanic.

Vanilla SNOBOL4 for microcomputers is released.

Methods , a line-oriented Smalltalk for PCs, is introduced.



--------------------------------------------------------------------------------

1986

Smalltalk/V appears--the first widely av ailable version of Smalltalk for microcomputers.

Apple releases Object Pascal for the Mac.

Borland releases Turbo Prolog.

Charles Duff releases Actor, an object-oriented language for developing Microsoft Windows applications.

Eiffel , another object-oriented language, appears.

C++ appears.



--------------------------------------------------------------------------------

1987

Turbo Pascal version 4.0 is released.



--------------------------------------------------------------------------------

1988

The specification for CLOS -- Common LISP Object System -- is published.

Niklaus Wirth finishes Oberon, his follow-up to Modula-2.



--------------------------------------------------------------------------------

1989

The ANSI C specification is published.

C++ 2.0 arrives in the form of a draft reference manu al. The 2.0 version adds features such as multiple inheritance and pointers to members.



--------------------------------------------------------------------------------

1990

C++ 2.1 , detailed in Annotated C++ Reference Manual by B. Stroustrup et al, is published. This adds templates and exception-handling features.

FORTRAN 90 includes such new elements as case statements and derived types.

Kenneth Iverson and Roger Hui present J at the APL90 conference.



--------------------------------------------------------------------------------

1991

Visual Basic wins BYTE’s Best of Show award at Spring COMDEX.



--------------------------------------------------------------------------------

1992

Dylan -- named for Dylan Thomas -- an object-oriented language resembling Scheme, is released by Apple.



--------------------------------------------------------------------------------

1993

ANSI releases the X3J4.1 technical report -- the first-draft proposal for (gulp) object-oriented COBOL. The standard is expected to be finalized in 1997.



--------------------------------------------------------------------------------

1994

Microsoft incorporates Visual Basic for Applications into Excel.



--------------------------------------------------------------------------------

1995

In February , ISO accepts the 1995 revision of the Ada language. Called Ada 95, it includes OOP features and support for real-time systems.



--------------------------------------------------------------------------------

1996

Anticipated release of first ANSI C++ standard .
回复

使用道具 举报

340

主题

3478

回帖

5028

积分

网站编辑

积分
5028
 楼主| 发表于 2004-5-21 12:10:16 | 显示全部楼层
pre 1950

    Predecessor(s)  YEAR  PRODUCT -- Developer, Company
                 *  1840~ FIRST PROGRAM -- Lovelace
                 *  1945  Plankalkül -- Zuse

1950

                 *  1952  A-0 -- Hopper
                    1954  Mark I Autocode -- Brooker
               A-0  1954  ARITH-MATIC -- Hopper
               A-0  1955  MATH-MATIC -- Hopper
               A-0  1955  FLOW-MATIC -- Hopper
               A-0  1955  FORTRAN -- Backus
                    1956  Information Processing Language -- Newell, Shaw, Simon
        FLOW-MATIC  1957  COMTRAN -- Bemer
           FORTRAN  1958  FORTRAN II -- Backus
           FORTRAN  1958  Algol 58
                 *  1959  LISP McCarthy

1960

FLOW-MATIC COMTRAN  1960  COBOL The Codasyl Committee
             ALGOL  1960  Algol 60
             ALGOL  1960  JOSS
        FORTRAN II  1962  FORTRAN IV
                 *  1962  APL -- Iverson
           ALGOL60  1962  Simula
        FORTRAN II  1962  SNOBOL -- Griswold, et al.
           ALGOL60  1963  CPL -- Barron, Strachey, et al.
            SNOBOL  1962  SNOBOL3 -- Griswold, et al.
          CPL LISP  1964  COWSEL Burstall, Popplestone
           ALGOL60  1964  /A> IBM team
  FORTRAN II, JOSS  1964  BASIC -- Kemeny and Kurtz
        FORTRAN II  1966  FORTRAN IV
              LISP  1966  ISWIM Landin
           ALGOL60  1966  CORAL66 Real Time version of Algol 60
               CPL  1967  BCPL -- Richards
      Fortran LISP  1967  MUMPS -- Massachusetts General Hospital
            Simula  1967  Simula67
           SNOBOL3  1967  SNOBOL4 -- Griswold, et al.
           Algol60  1968  ALGOL 68 -- Wijngaarten, et al.
            COWSEL  1968  POP-1 -- Burstall,  Popplestone
                    1968  Forth -- Moore (first paper, 1970)
              Lisp  1968  Logo -- Papert

1970

            POP-1   1970  POP-2
           ALGOL60  1971  Pascal -- Wirth, Jensen
          Simula67  1972  Smalltalk Environment -- Smalltalk--Digitalk
            B BCPL  1972  C -- Ritchie
                 *  1973  PROLOG -- Colmeraurer
             BASIC  1973  COMAL
              LISP  1975  Scheme -- Sussman, Steele
             BASIC  1975  Altair BASIC -- Gates, Allen
         C FORTRAN  1976  RATFOR -- Kernighan
             MUMPS  1977  X11.1 ANSI Standard MUMPS
        FORTRAN IV  1978  FORTRAN77
               ( *  1978  VISICALC -- Bricklin, Frankston)
          C SNOBOL  1979  Awk -- Aho, Kernighan
               ( *  1979  VULCAN DBASE-II -- Ratliff )
           Algol68  1979  Green -- Ichbiah et al., US Dept of Defense

1980

        C Simula67  1980  C with Classes -- Stroustrup
          Simula67  1980  Smalltalk-80 -- Digitalk
             Green  1983  Ada -- US Dept of Defense
    C with Classes  1983  C++ -- Stroustrup
            Pascal  1983  Turbo Pascal -- Hejlsberg
                *   1984  Standard ML ML = Meta-Language
         1977MUMPS  1985  1984 MUMPS
           ( dBase  1984  CLIPPER -- Nantucket )
           ( dBase  1985  PARADOX -- Borland )
          Simula67  1986  Eiffel -- Meyer
               ( *  1987  HyperCard -- Apple )
               ( *  1987  SQL-1 )
               Awk  1987  Perl -- Wall
            MATLAB  1988  Octave
         dBase-III  1988  dBaseIV
          Awk Lisp  1988  Tcl -- Ousterhout
      Turbo-Pascal  1989  Turbo-Pascal+OOP -- Borland
                 C  1989  Standard C -- ANSI X3.159-1989 (adopted by ISO in 1990)
  Pascal Modula-II  1989  OBERON -- Wirth

1990

                    1990  Haskell
         1984MUMPS  1990  1990 MUMPS        
                    1991  Python -- van Rossum
                    1991  Q
           ( SQL-1  1992  SQL-2 )
  Turbo-Pascal OOP  1992  Borland Pascal
                    1993  Brainfuck -- Mueller
    Perl Smalltalk  1993  Ruby
                    1993  Lua
            Ada 83  1995  Ada 95 -- ISO
    Borland Pascal  1995  Delphi(1) -- Borland
  C++ Internet OOP  1995  Java -- Sun Microsystems
         1990MUMPS  1995  1995 MUMPS
    Standard ML,84  1997  SML’97  
             PHP 3  1997  PHP
               C++  1998  C++98 -- ANS/ISO Standard C++

                    2000  Joy -- von Thun
     C C++ COM Java 2000  C# -- Microsoft
         DELPHI(5)  2001  KYLIX -- Borland
         Whitespace 2003  Whitespace -- Brady and Morris
--------------------------------------------------------------------------------
Things with unknown or questionable dates:
                 *  197?  sh (Bourne Shell) -- Bourne
                sh  19??  ksh (Korn Shell) -- Korn
               ksh  199?  zsh (Z Shell)
          HyperCard 199?  AppleScript -- Apple
                  * 1990  Self -- Sun Microsystems Inc
          Self Java 199?  LiveScript -- Brendan Eich, Netscape (Self inspired, made for Java interactions)
         LiveScript 1995  JavaScript -- Netscape
         JavaScript 1997  ECMAScript -- ECMA TC39-TG1
                    2003  Rikstation
回复

使用道具 举报

340

主题

3478

回帖

5028

积分

网站编辑

积分
5028
 楼主| 发表于 2004-5-21 12:12:03 | 显示全部楼层
各种语言的家族关系

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

340

主题

3478

回帖

5028

积分

网站编辑

积分
5028
 楼主| 发表于 2004-5-21 12:17:11 | 显示全部楼层
Visual Basic 历史版本大回顾
Visual Basic从1991年诞生以来,现在已经13年了。BASIC是微软的起家产品,微软当然不忘了这位功臣。随着每一次微软技术的浪潮,Visual Basic都会随之获得新生。可以预见,将来无论微软又发明了什么技术或平台,Visual Basic一定会首先以新的姿态登上去的。如果你想紧跟微软,永远在最新的技术上最快速地开发,你就应该选择Visual Basic。

1991-西雅图夜空的雷电
随着Windows 3.0的推出,越来越多的开发商对这个图形界面的操作系统产生了兴趣,大量的Windows应用程序开始涌现。但是,Windows程序的开发相对于传统的DOS有很大的不同,开发者必须将很多精力放在开发GUI上,这让很多希望学习Windows开发的人员却步。1991年,微软公司展示了一个叫Thunder的产品,所有的开发者都惊呆了,它竟然可以用鼠标“画”出所需的用户界面,然后用简单的BASIC语言编写业务逻辑,就生成一个完整的应用程序。这种全新的“Visual”的开发就像雷电(Thunder)一样,给Windows开发人员开辟了新的天地。这个产品最终被定名为Visual Basic,采用事件驱动,Quick BASIC的语法和可视化的IDE。Visual Basic 1.0带来的最新的开发体验就是事件驱动,它不同于传统的过程式开发。同时,VBX控件让可视化组件的概念进入Visual Basic。Visual Basic 1.0是革命性的BASIC,它的诞生也是VB史上的一段佳话。

Visual Basic 1.0

1992-渐入佳境的Visual Basic
由于Windows 3.1的推出,Windows已经充分获得了用户的认可,Windows开发也进入一个新的时代。Visual Basic 1.0的功能过于简单,相对于Windows 3.1的强大功能没有发挥出来。所以,微软在1992年推出了新版本Visual Basic 2.0。这个版本最大的改进就是加入了对象型变量,比如

Dim b As CommandButton

Dim c As Control

而且有了最原始的“继承”概念,对象型变量分为一般类型(Control和Form)和专有类型(CommandButton和Form1等),一般类型的变量可以引用专有类型的实例,甚至通过后期绑定访问专有类型的属性和方法。甚至可以通过TypeOf…Is运算符获取对象实例的运行时类型信息(这个功能就是当今C#的is运算符或Java的instanceof运算符)。除了对语言的改进和扩充,Visual Basic 2.0对VBX有了很好的支持,许多第三方控件涌现出来,极大地丰富了Visual Basic的功能。微软还为Visual Basic 2.0增加了OLE和简单的数据访问功能。

Visual Basic 2.0标准版

Visual Basic 2.0专业版

1993-数据库组件新添力量
Visual Basic 2.0推出没几个月,微软就发布了新版本的Visual Basic 3.0,可以看出VB这时候旺盛的生命力。乍一看,Visual Basic 3.0的界面没有太大的变化,但其实这个版本是非常及时的。它增加了最新的ODBC2.0的支持,Jet数据引擎的支持和新版本OLE的支持。最吸引人的地方是它对数据库的支持大大增强了,Grid控件和数据控件能够创建出色的数据窗口应用程序,而Jet引擎让Visual Basic能对最新的Access数据库快速地访问。Visual Basic 3.0还增加了许多新的金融函数。此外还增加了相当多的专业级控件,可以开发出相当水平的Windows应用程序。Visual Basic 3.0是98年以前中国最流行的Visual Basic版本,因为它开发出来的可执行文件非常小,通常能用一张软盘装下。不过,Visual Basic采用虚拟机运行P代码的做法也让很多开发者不满,他们认为这样程序运行的效率很低,这时候Visual Basic的竞争者Delphi也诞生了。

Visual Basic 3.0标准版

Visual Basic 3.0特别版

1995-第二次革命性变化,向COM进军。
从1993年到1995年年中,Visual Basic一直没有新的动静,焦急的开发者都想一窥这个神秘的新版本到底发生了什么变化。Visual Basic 4.0的BETA最后终于和大家见面了。这个版本包含了16位和32位两个版本,16位的版本就像是Visual Basic 3.0的升级版,而32位版则是一场新的革命。首先,人们发现VBX控件不见了,全部换成了OCX控件,这个OCX可能是指OLE Custom Controls,这个OLE已经不是传统的OLE了,用现在的话说,它就是COM控件。第二个最大变化是Visual Basic 4.0所用的语言换成了Visual Basic For Application,这就和Office 95所采用的宏语言统一起来,这个新语言有很多亮点:

1、? 加入了“类模块”。这是面向对象最重要的封装性的基础。

2、? 加入了属性过程,加上函数过程,子程序过程,VB已经有组件开发所需的封装性特征。

3、? 加入了Byte类型、Boolean类型和Object类型。这大大完善了VB的类型系统。

4、? For Each语句和Collection对象。For Each语句给遍历集合类型提供了极大的方便,现在可以在动态增长的Collection上使用For Each,而不用担心集合内容的总数或烦人的下标问题。

这个版本的Visual Basic还能够开发DLL工程,其实就是COM的DLL,可以将书写好的类用这种方式和其他语言共享。

总之,这个4.0的版本为Visual Basic成为一种COM语言奠定了基础。用Visual Basic 4.0开发基于COM的DLL比任何一种开发工具都方便。但是,Visual Basic 4.0的性能问题变得更加严重了,P-代码的组件成为Visual Basic 4.0严重的性能瓶颈,而且巨大的运行库也让用户感到不满。Visual Basic 4.0对以前版本的支持也不好,使用了大量VBX的项目很难移植到Visual Basic 4.0中。因此,Visual Basic 4.0在中国的普及程度非常低。

Visual Basic 4.0

1997-Visual Basic的丰收年
1997年,微软推出了Visual Basic 5.0,这个版本的重要性几乎和4.0一样高。COM(这时候叫ActiveX)已经相当成熟,Visual Basic 5.0当然对它提供了最强的支持。不过,国内还没有意识到COM的重要性前主要对这个版本另一个最大的亮点十分关注:本地代码编译器。Visual Basic 5.0终于在用户的呼声中加入了一个本地代码编译器,它可以让应用程序的效率大大提升。除了这个大家都知道的改进以外,Visual Basic 5.0对Visual Basic For Application语言有重大的完善和丰富:

5、? 事件。Visual Basic 5.0终于允许用户自己创建事件,而且这事件的语法相当强健和完善,这在一种不支持函数回调的语言中是很难得的。现在,VB拥有属性、方法和事件的完整封装性。

6、? 接口。这是VB实现多态性的基础。同时为编写COM组件提供了更多方便。

7、? 枚举。在Visual Basic 5.0中枚举作为Long整型的子类型出现,用枚举可以对常量进行完善的封装。

8、? 类模块的改进。通过类模块的属性可以指定类模块具有多种指定的行为,如私有构造函数等,可以通过这个功能创建符合Singleton和Monostate模式的设计。

9、? Debug.Assert。虽然这个断言系统有点鸡肋,但是总算是给调试带来了方便。

10、 Visual Basic 5.0支持创建自己的集合类。可以创建用于For Each语句的集合类型。

11、新的数据类型Decimal,可以精确地处理有效数位较多的计算。

Visual Basic 5.0的IDE支持“智能感知”,这是一项非常方便开发者的功能,可以不必记住很长的成员名称和关键字,只要按“.”,想要的东西统统弹出来。

Visual Basic 5.0还支持开发自己的ActiveX 控件、进程内的COM DLL组件、进程外的COM EXE组件以及在浏览器中运行的ActiveX文档。这极大丰富了Visual Basic的开发能力,在Internet开发上,Visual Basic 5.0也能有所建树。

Visual Basic 5.0学习版——我的第一份正版VB

1998-企业真正高效的源泉
Visual Basic 6.0作为Visual Studio 6.0的一员发布,证明微软正在改变Visual Basic的产品定位,他想让Visual Basic成为企业级快速开发的利器。Visual Basic 6.0在数据访问方面有了很大的改进,新的ADO组件让对大量数据快速访问成为可能。数据环境和新的报表功能也让数据开发有了全新的体验。Visual Basic 借助COM/COM+强大的功能,可以开发具有N层结构的分布式应用程序。同时,Visual Basic还可以在IIS上开发性能超群的Web应用程序。Visual Basic 6.0在语言方面和IDE方面的改进都不大,但是许多新增的组件成为Visual Basic开发人员手中的利器,如File System Object等。新的字符串函数Split和Replace等也给Visual Basic的程序员带来很大方便。

总之Visual Basic 6.0已经是非常成熟稳定的开发系统,能让企业快速建立多层的系统以及Web应用程序,成为当前Windows上最流行的Visual Basic版本。

Visual Basic 6.0

2002-第三次革命性变化,向.NET进军
从1998年发布到2002年正式推出Visual Basic. NET简直吊足了开发者的胃口。从2000年就开始传言的具有继承、Try…Catch语句等新功能的全新VB7.0一直没有露面。直到2001年,Visual Studio.NET的第一个BETA版问世的时候,所有人都呆了——这是Visual Basic吗?And语句变成了BitAnd,数组只能从0下标开始,而且连Dim语句的意义都变了,几乎所有的窗体控件都变了,Long变成了Integer而Integer变成了Short,Variant不见了,Static不能用了……简直是翻天覆地,人们已经无暇关注这个版本有什么改进,转而担心我怎么才能接受这个本本了。其实Visual Basic. NET完全是为了.NET Framework这一全新的平台而设计的,Visual Basic. NET的设计者一开始没有掌握好新平台和旧语言的平衡。到了BETA2中,很多东西回归了6.0,如BitAnd又变回了And,数组的定义语句也变回了原有的意义,Static也回到了Visual Basic中。但是BETA1惊人的变化让所有的VB开发者怕了,他们觉得这种语言被改的千疮百孔,有些人干脆转去研究传说中的新语言C#。但是Visual Basic. NET渡过几个BETA版本之后还是找到了正确的定位。Visual Basic. NET有对CLR最完善的支持,同时尽量保留着BASIC易懂的语法风格和易用性。这个版本新增加的功能已经数不清,最重要的几个是:

1、? 继承。至此,Visual Basic完成了向面向对象转变的道路。

2、? 共享成员。

3、? Try…Catch结构化异常处理。

4、? Delegate和Interface。

5、? 名称空间。

6、? 对自由线程的支持。

特别的是,Visual Basic. NET大大减少了Visual Basic语言的关键字,如GoSub、PSet等等。原先的Visual Basic有多达120个关键字,这给写程序带来了很大的不便,现在经过精简,Visual Basic脱下了这个沉重的包袱。

Visual Basic. NET现在是一门现代的、强壮的、面向对象的、简单的可视化开发语言。强大的语言功能吸引了很多开发者。历史是在不断重演的,Visual Basic. NET如今的处境和Visual Basic 4.0很相似,由于兼容性变差,人气也降低了。同时由于依附于.NET Framework,程序发布造成了一定的困难。现在国内使用Visual Basic. NET的人相对于Visual Basic 6.0来讲显得很少。但是凭借Visual Basic. NET强大的语言功能和MS的支持,Visual Basic. NET一定会显出它的光辉来。



2003-稳中求变的新版本
Visual Basic. NET 2003是一个相当稳重的版本,改变很少,但对小处有很多改进。首先Visual Basic 6.0升级向导做了很大改进,这给从老版本痛苦升级的人带来了更多一些的希望。其次在IDE方面,Visual Basic. NET 2003修正了许多错误,还让事件处理恢复了6.0的开发体验。语言方面只有两项改进:

1、? 在For、For Each语句中声明循环变量。

2、? 增加了数学移位运算符<<和>>。

在这个比较成熟稳定的新版本下,许多Visual Basic的爱好和开始重新了解Visual Basic. NET,社区里面也渐渐热闹起来。但是,有些使用C#的开发者坚持认为Visual Basic. NET是垃圾,尽管Visual Basic. NET拥有比C#更多的功能和更好的IDE。这说明不了解Visual Basic. NET成为它普及的最大障碍。



2005-完美主义的Visual Basic,能否再现辉煌?
为了让Visual Basic有最佳的开发体验,Visual Basic 2005的设计者绞尽了脑汁。这次Visual Basic 2005光语言上的改进就足以让Visual Basic的开发人员高兴一阵子。大家可以去看看我那篇介绍Visual Basic 2005新增功能的贴子。挑重要的列在下边:

1、? 泛型

2、? 运算符重载

3、? Partial Type

4、? 窗体的默认实例(让你用VB6的语法使用窗体)

5、? 语法的多种改进

6、? My关键字

现在用Visual Basic 2005只要一行代码就可以读写注册表、访问文件、读写串口、获取应用程序信息…… 用Visual Basic 2005完全可以称作享受开发。而泛型、运算符重载等功能又可以让Visual Basic的开发人员深入.NET Framework的全部功能,开发出最优秀的应用程序。

Visual Basic 2005预示着Visual Basic光明的前景,所有Visual Basic的爱好者和使用者都和我一起等待这个新版本吧。
回复

使用道具 举报

340

主题

3478

回帖

5028

积分

网站编辑

积分
5028
 楼主| 发表于 2004-5-21 12:19:48 | 显示全部楼层
Windows发展历史

Windows起源可以追溯到Xerox公司进行的工作。1970年,美国Xerox公司成立了著名的研究机构Palo Alto Research Center(PARC),从事局域网、激光打印机、图形用户接口和面向对象技术的研究,并于1981年宣布推出世界上第一个商用的GUI(图形用户接口)系统:Star 8010工作站。但如后来许多公司一样,由于种种原因,技术上的先进性并没有给它带来它所期望的商业上的成功。

当时,Apple Computer公司的创始人之一Steve Jobs,在参观Xerox公司的PARC研究中心后,认识到了图形用户接口的重要性以及广阔的市场前景,开始着手进行自己的GUI系统研究开发工作,并于1983年研制成功第一个GUI系统:Apple Lisa。随后不久,Apple又推出第二个GUI系统Apple Macintosh,这是世界上第一个成功的商用GUI系统。当时,Apple公司在开发Macintosh时,出于市场战略上的考虑,只开发了Apple公司自己的微机上的GUI系统,而此时,基于Intel x86微处理器芯片的IBM兼容微机已渐露峥嵘。这样,就给Microsoft公司开发Windows提供了发展空间和市场。

Microsoft公司早就意识到建立行业标准的重要性,在1983年春季就宣布开始研究开发Windows,希望它能够成为基于Intel x86微处理芯片计算机上的标准GUI操作系统。它在1985年和1987年分别推出Windows 1.03版和Windows2.0版。但是,由于当时硬件和DOS操作系统的限制,这两个版本并没有取得很大的成功。此后,Microsoft公司对Windows的内存管理、图形界面做了重大改进,使图形界面更加美观并支持虚拟内存。Microsoft于1990年5月份推出Windows3.0并一炮打红。这个“千呼万唤始出来”的操作系统一经面世便在商业上取得惊人的成功:不到6周,Microsoft公司销出50万份Windows3.0拷贝,打破了任何软件产品的6周销售记录,从而一举奠定了Microsoft在操作系统上的垄断地位。

一年之后推出的Windows3.1对Windows 3.0作了一些改进,引入TrueType字体技术,这是一种可缩放的字体技术,它改进了性能;还引入了一种新设计的文件管理程序,改进了系统的可靠性。更重要的是增加对象链接合嵌入技术(OLE)和多媒体技术的支持。Windows3.0和Windows3.1都必须运行于MS DOS操作系统之上。

随后,Microsoft借Windows东风,于1995年推出新一代操作系统Windows95(又名Chicago),它可以独立运行而无需DOS支持。Windows95是操作系统发展史上一个里程碑式的作品,它对Windows3.1版作了许多重大改进,包括:更加优秀的、面向对象的图形用户界面,从而减轻了用户的学习负担;全32位的高性能的抢先式多任务和多线程;内置的对Internet的支持;更加高级的多媒体支持(声音、图形、影像等),可以直接写屏并很好的支持游戏;即插即用,简化用户配置硬件操作,并避免了硬件上的冲突;32位线性寻址的内存管理和良好的向下兼容性等等。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|海浩社区

GMT+8, 2025-9-21 22:11 , Processed in 0.092511 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表