Delphi

一,概述

Delphi是Borland公司于1995年开发的在Windows平台下的快速应用程序开发(Rapid Application Development,RAD)软件包。(2006年后分归其子公司CodeGear,2008年后被Embarcadero收购。) Delphi主要用于开发桌面程序和企业数据库应 用,但它同样是一种通用和几乎万能的开发工具。Delphi不但是Object Pascal的代名词,而且越来越成为一个通用的IDE(跨平台,Delphi for PHP)。

Delphi在本质上应该归类为软件开发工具,而非程序语言,但由于Delphi几乎是目前市场上唯一使用Pascal,并持续推出新版本的商业产品。因此,有时人们会把Delphi视为Object Pascal的代名词。Borland公司因而把Object Pascal改称为Delphi。

Delphi目前仍然是Windows平台下最快捷的软件开发工具。Pascal语言类产品还包括Bloodshed Dev-Pascal,Lazarus。

二,特点优点缺点

(一), 优点:

  1. 基于Object Pascal程序语言的编译器,易读易编快速编译(相对于VB的解释语言,Delphi是编译语言且只生成单个可执行文件.EXE)。可编译成一个单独的EXE文件,便于分发,无DLL版本冲突之忧。快速的优化编译器也可以使用汇编代码。

  2. COM无关的界面和实现自动统计参考的类。类的助手可以连接本地Delphi RTL中可用的函数功能,适合于快速开发。

  3. Delphi 2007后支持MS 32位x86平台,(从8.0版本开始).net平台和(通过Kylix)Linux平台。可以从同一源码中编译出多平台的原生代码。Delphi 2005/2006/2007都支持advanced refactoring 功能如Method Extraction

  4. 基于一个经过优良设计的强类型的高级语言,而且同时可使用低级代码去访问与运行硬件。该语言的面向对象的功能只有基于class-类和接口interface-的多态性.界面的实现可以通过委托给一个字段或类的属性.消息处理程序的实现可通过在一个类的方法上标记该消息的整数常量来处理。

  5. 分布式应用系统:应用程序开发团队每位成员不见得用同一套开发工具,因此Delphi支持COM/DCOM与CORBA,可供Delphi设计人员使用 Visual C++、Visual BASIC的Active X组件,或使用DCOM、CORBA的功能让JAVA应用程序取用其共享功能。

  6. 拥有VCL(Visual Component Library)/CLX(用于Kylix于8.0版后不支持) 函数库/类库的面向对象的高效开发框架,和丰富的开源的第三方组件和工具。拥有大量的社区支持,如 Usenet 和Delphi新闻组| 等。

  7. DELPHI各版本之间有很高的兼容性。

(二), 缺点:

  1. 目前Delphi只能运行于Win平台。Kylix停止开发。CrossKylix是停止开发的一个第三方工具包,使得Delphi可在Windows环境中编译成Linux的原生代码,创造双平台开发与布署环境。 CrossFPC是类似CrossKylix的项目,还没发布就荒废了,它可以使得Delphi可在Windows环境中编译到Free Pascal compiler支持的多个平台中。

  2. 为保持向下兼容性而不对现有代码做大改动,所以导致一些令人费解的语言设计,语言的正交性和可预测性受损。

  3. 2006/2007/2009版的Delphi稳定性受争议。

  4. 市场份额开拓不力:近年来,因Microsoft与Java的冲击,以及公司商业策略的考量,使得Delphi在中国大陆的市占率越来越少。现在大部分的Delphi使用者,多为旧版本培养出来的老客户,而后来的Delphi使用者则是逐渐减少。之所以会有这种现象,除了微软与Java 两大阵营的竞争效应,以及Delphi本身就缺乏中文教材的因素之外,在程序设计的正规教育体系中,此开发工具亦非主流学科。而在这样的环境中,Delphi也只能逐渐被边缘化,因此更进一步导致无新用户加入。

三,版本历史

它的前身是在DOS下的产品Borland Turbo Pascal。发行版本包括:Personal, Professional, Enterprise (formerly Client/Server)和 Architect.从Turbo Pascal 5.5版开始,Borland公司在传统Pascal的基础上加入了面向对象的功能,Object Pascal产生。

年份

版本

特点

1995

1.0

Borland Pascal 7 支持16位Windows开发。基于框架(VCL)的,可拖曳、可视化的开发环境

1996

2.0

以32位编译器为核心,支持C/S数据库开发.Delphi的第1、2版,是以Turbo Pascal编译器为基本核心。此编译器于DOS时代由Anders Hejlsberg使用汇编语言撰写而成,由于品质良好,于是几乎没有工程师随意改动这些程序码。

1997

3.0

语法:加入接口(Interface)的机制。IDE:首次提供了(Code Insight).自Delphi第3版开始,Danny Thorpe修改了Delphi的编译器,并接下了串行埠引用计数值(Reference Count)的维护工作,以免除开发者繁杂的程序代码。同时Danny也在Object Pascal程序语言加入接口(Interface)的机制,使得Object Pascal和Java一样,对接口程序设计都提供First Class的支持。在Delphi 1/2中,Object Pascal变化的部分很少,但是从Delphi 3之后,每一次改版的Delphi,其核心Object Pascal都有许多改良。现在的Delphi,使用的是档名为DCC32.EXE的编译器。与同时代的产品相比,它最大的优势就是提高了程序开发效率,不仅编译速度有所提升,同时也保证了机器码的高效能。

1998

4.0

语法:加入动态数组和方法覆盖等支持。IDE:增强调试能力,提供代码模板

1999

5.0

增强了IDE和调试器,提供了TeamSource。简化Internet的开发,增强数据库支持.

2001

6.0

提供了Web Service。跨平台的Kylix 1.0和CLX

2002

7.0

提供了.NET的过渡,增强的Internet开发(IntraWeb),完善数据库支持,增加了Indy网络组件和Rave Report数据库报表,并且支持UML及XP的程序制作。

2003

8.0

单纯的for .NET版本,拥有C#的能力,保留了Delphi的易用性(业内视为一个过渡版本)从Delphi 8开始,其后续版本不再对CLX提供支持

2004

9.0

正 式名称:Delphi 2005。语法:加入了inline及for in loop等功能。IDE:把Borland Delphi.Net、Borland Delphi Win32、Borland C#、Enterprise Core Objects等环境和功能集成成一个开发工具,因此可以在Win32和.NET开发环境中切换或同时进行

2005

10.0

发 布名称:Borland Developer Studio(BDS) 2006。集成C++ Builder; ECO(Enterprise Core Objects)升级到ECO III; 集成Together for Delphi,可以在同一个IDE中进行UML开发;QA Audits和QA Metrics可以快速的把握项目的设计和代码的质量。

2006

Turbo

Borland 将BDS 2006拆分成几个独立的版本(Delphi for win32、Delphi for .net、C#、C++ Builder),而且不能同时安装两个不同的版本。由于Borland的IDE生产部份独立成为一家名为codegear的公司,是以 Borland名义推出的最后一个版本。

2006

11.0

CodeGear RAD Studio - Delphi 2007。正式对Windows x86的API进行了完善,是最后一个支持VCL.NET的版本

2008

12.0

CodeGear RAD Studio - Delphi 2009(Professional,Enterprise,Architect) 和 C++Builder 2009,正式全面支持Unicode,完整的泛型支持

2009

14.0

Embarcadero RAD Studio 2010-(Professional, Enterprise和Architect),自动排版功能

2010

15.0

Embarcadero RAD Studio XE-(Professional, Enterprise和Architect),包括Delphi, C++Builder, Delphi Prism, 和 RadPHP,集成了Profile工具

2011

16.0

Embarcadero RAD Studio XE2-(Professional, Enterprise, Ultimate和Architect),支持64位,FireMonkey支持跨平台

四,开发环境

1,安装设置Delphi :Delphi开发工具

2,开发环境快速入门: Delphi 7 使用教程

3,VCL框架 :Delphi之精髓 – VCL框架

4,第三方组件 :第三方组件

3,错误处理:Delphi错误调试

五,Delphi教程

要在Delphi这一系列纷杂的产品线中找到自己的学习路线,可以先考虑工作上需要研究什么目标,再根据该目标决定其他相关要研究的技术,最后再根据自己的兴趣选择一条连贯的技术升级路线长期坚持地走下去。如Delphi→ECO→MDA→AJAX→.NET MultiTier→.NET Remoting,如JBuilder(Peloton)→Eclipse→J2EE 5→EJB3,又如Software Engineering→Together→Extreme Programmng→Scrum→ICON。

1, Delphi语言(Object Pascal)语法:Delphi基本功。学好Delphi核心语言的语法要从掌握两方面入手:

A,Delphi语法基础:传统的词汇句法;

B,Delphi语法进阶:高级的文法

2, Delphi数据库开发

3, Delphi界面设计

4, Delphi加密解密

5,Delphi建模

6, 其它: Delphi的windows编程

  1. 学习资源:Delphi源码

参见:

很希望大家把自己做项目中的小技巧共享出来|

万一的 Delphi 博客|

以Delphi Package架构多人开发应用程序环境|

Freebyte's Guide to free Delphi programming|

Embarcadero_Delphi| 被Micro Focus收购,Borland 终于失去了你!|

Delphi企业经营管理系统开发实例导航| Delphi企业经营管理系统开发实例导航目录.pdf |

DELPHI经典游戏程序设计40例

3D贪食蛇游戏 (OpenGL)

dproj,.groupproj,.bdsdeploy,.bdsgroup,bdsproj,.config,.dfm,.dpk,.dpkw,.dpr,.pas Delphi相关文件扩展名介绍

«Delphi 5开发人员指南»:对Object Pascal语法讲解最好最权威的备受推崇的

如何实现图片加密?

从Turbo Pascal到Delphi

学习Delphi的方法

delphi一句话帮助

Delphi中如何利用资源

软件登录软件 DIY 网站登录软件

ECO学习笔记之一 ECO学习笔记之二 ECO学习笔记之三

Delphi 7组件经典解析

承影论剑 Delphi/Pascal

中国视频教程基地_免费视频教程下载 ? Dilphi编程学习区

我的Delphi开发经验谈

Delphi之萝莉调教篇(上篇)|Delphi之萝莉调教篇(下篇)

Delphi集成开发环境的一些技巧

CodeGear RAD Studio 2007 – the Smart Alternative by Nick Hodges

《Mastering Delphi 6》学习笔记之十一《Mastering Delphi 6》学习笔记之十《Mastering Delphi 6》学习笔记之九《Mastering Delphi 6》学习笔记之八《Mastering Delphi 6》学习笔记之七《Mastering Delphi 6》学习笔记之六《Mastering Delphi 6》学习笔记之五《Mastering Delphi 6》学习笔记之四《Mastering Delphi6》学习笔记之三《Mastering Delphi 6学习笔记》之二

用Delphi产生一个最小的可执行程序

一个C++程序员的Delphi学习笔记

Delphi从入门到精通

Delphi 2006从入门到精通 要能弄到电子版就好了。