什么是Delphi

 在古希腊神话里,DELPHI是智慧女神,米开朗基罗在意大利有著名的DELPHI雕像 。

概述

  由Borland公司推出的Delphi是全新的可视化编程环境,为我们提供了一种方便、快捷的Windows应用程序开发工具。它使用了Microsoft Windows图形用户界面的许多先进特性和设计思想,采用了弹性可重复利用的完整的面向对象程序语言(Object-Oriented Language)、当今世界上最快的编辑器、最为领先的数据库技术。对于广大的程序开发人员来讲,使用Delphi开发应用软件,无疑会大大地提高编程效率,而且随着应用的深入,您将会发现编程不再是枯燥无味的工作——Delphi的每一个设计细节,都将带给您一份欣喜。

  Delphi是Borland公司研制的新一代可视化开发工具,可在Windows3.x、Windows95、WindowsNT等环境下使用。当前,DELPHI 也可以为LINUX平台上开发应用,其在LINUX上的对应产品Kylix。

  DELPHI 拥有一个可视化的集成开发环境(IDE),采用面向对象的编程语言ObjectPascal和基于部件的开发结构框架。Delphi它提供了500多个可供使用的构件,利用这些部件,开发人员可以快速地构造出应用系统。开发人员也可以根据自己的需要修改部件或用Delphi本身编写自己的部件。主要特点如下:

  (1)直接编译生成可执行代码,编译速度快。由于Delphi编译器采用了条件编译和选择链接技术,使用它生成的执行文件更加精炼,运行速度更快。在处理速度和存取服务器方面,Delphi的性能远远高于其他同类产品。

  (2)支持将存取规则分别交给客户机或服务器处理的两种方案,而且允许开发人员建立一个简单的部件或部件集合,封装起所有的规则,并独立于服务器和客户机,所有的数据转移通过这些部件来完成。这样,大大减少了对服务器的请求和网络上的数据传输量,提高了应用处理的速度。

  (3)提供了许多快速方便的开发方法,使开发人员能用尽可能少的重复性工作完成各种不同的应用。利用项目模板和专家生成器可以很快建立项目的构架,然后根据用户的实际需要逐步完善。

  (4)具有可重用性和可扩展性。开发人员不必再对诸如标签、按钮及对话框等Windows的常见部件进行编程。Delphi包含许多可以重复使用的部件,允许用户控制Windows的开发效果。

  (5)具有强大的数据存取功能。它的数据处理工具BDE(BorlandDatabaseEngine)是一个标准的中介软件层,可以用来处理当前流行的数据格式,如xBase、Paradox等,也可以通过BDE的SQLLink直接与Sybase、SQLServer、Informix、Oracle等大型数据库连接。 Delphi既可用于开发系统软件,也适合于应用软件的开发。

  (6)拥有强大的网络开发能力,能够快速的开发B/S应用,它内置的IntraWeb和ExpressWeb使得对于网络的开发效率超过了其他任何的开发工具。

  (7)Delphi使用独特的VCL类库,使得编写出的程序显得条理清晰,VCL是现在最优秀的类库,它使得Delphi在软件开发行业处于一个绝对领先的地位。用户可以按自己的需要,任意的构建、扩充、甚至是删减VCL,以满足不同的需要。

  (8)从Delphi8开始Delphi也支持.Net框架下程序开发。

  当前DELPHI 已经成为一个品牌,而不仅仅是一个开发平台或开发语言的名称。 当前DELPHI产品已经由CodeGear公司继续发展,该公司是BORLAND公司的全资子公司。当前,CodeGear为广大开发者提供了DELPHI FOR PHP,以高度可视化的方式全面支持面向对象的PHP 网站开发,大大提高了PHP开发网站的代码复用程度,成为WEB应用开发的新利器。

  Delphi的发展历程:

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

  1996 2.0 以32位编译器为核心,支持C/S数据库开发

  1997 3.0 语法:加入接口(Interface)的机制。IDE:首次提供了(Code Insight)

  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的易用性(业内视为一个过渡版本)

  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名义推出的最后一个版本。

  2007 11.0 正式名称:CodeGear RAD Studio - Delphi 2007。

  2008 5.7 Borland正式宣布将CodeGear子公司出售给Embarcadero(易博龙)技术公司。

  2008 8.25 Embarcadero发布CodeGear Delphi 2009 Pre-release版。

在DELPHI中技巧实现权限管理

  在运用DELPHI编制一些应用系统时,有很多时候都需要给不同的用户赋予不同的权限,而不同的系统又有不同的权限分配方式,如果在程序中去为每一位用户分配权限的话,不仅使得程序的编制十分麻烦,而且也不利于管理!笔者近日想得一自认为比较好的方法,愿与大家共享,并望各位多指教!

  在很多的系统中,权限通常是被分成几级的。每一级的用户所能实现的操作是不同的,而实现这一功能的方法一般都是让不同权限的用户见到不同的菜单。简单的说就是对不具有某一权限的用户这一菜单就是不可见的!为了实现这一控制,程序员们往往得花费很多的时间去做这一模块,浪费了很多宝贵的时间!

  笔者的想法是:如果设一个二维数组,第一维代表第一级菜单,第二维代表子菜单,每一个数组元素只存储0或1这两个数,某一权限的用户对应着一个二维数组,而这个数组又代表了相应的菜单。给某一级别的用户分配权限后,他便拥有了一个相应的数组。登录时,从数组中取出各个元素的值,如果为1则相应的菜单出现,为0则不出现菜单。用这种方式不但可以分级(同一级用户的数组相同),还能实现在不同的用户间实现权限细分,只要你修改相应的数值为0或1即可!

  上面是一个简单例子的运行结果。

  下面是部分源程序(这仅是一个解释性的例子程序),为了简便,程序中只有一个窗体和一个主菜单。在创建窗体时初始化数组M,显示时读出数组值并通过设置菜单的Enabled属性或者Visible属性的True或False来控制显示!!

  var

  Form1: TForm1;

  m:array[0..1,0..4] of integer;//定义存储的数组

  i,j:integer;//定义循环的变量

  implementation

  {$R *.dfm}

  procedure TForm1.FormShow(Sender: TObject);

  begin //读出数字并控制菜单的显示

  for i:=Low(m) to High(m) do

  for j:=Low(m) to High(m) do begin<i id="bke_d4y4bta9">

  if m[j]=0 then MainMenu1.Items.Items[j].Enabled:=false //如果是0,则 菜单的子项enabled为false

  else MainMenu1.Items.Items[j].Enabled:=true;

  end;

  end;

  procedure TForm1.FormCreate(Sender: TObject);

  begin //下面是初始化

  k:=0;

  for i:=Low(m) to High(m) do

  for j:=Low(m) to High(m) do

  if (j mod 2)=0 then m[j]:=1

  else m[j]:=0;

  end;

  在实际的应用中,一般在用户的信息记录表中就记录了用户的权限数组。在登录时取出此数组再与上面的步骤类似就可以了。

  2008年5月7日,Borland正式宣布将CodeGear子公司出售给Embarcadero(易博龙)技术公司。

你可能感兴趣的:(windows,开发工具,Delphi,Borland,程序开发,web应用开发)