Delphi2005从入门到精通

Delphi2005从入门到精通
作 者: 坎徒
出版社: 电子工业出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 软件工具 程序设计
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  MarcoCantu是最畅销的“MasteringDelphi”系列丛书和几本Delphi电子图书的作者。由于他在Delphi方面的写作、教学和公共演讲的贡献,Marco曾经获得过由颁发的SpiritofDelphi奖。他还从事XML和Web服务体系结构方面的咨询工作,并且积极参与几个开放源代码项目。Marco目前生活在意大利,通过他的网站www.marcocantu.com,即可与他联系。

内容简介

Delphi 2005是一个经过彻底翻新的集成开发环境。本书通过大量的示例从面向对象编程(OOP)的角度详细介绍Delphi语言,深入分析如何使用这个新的集成开发环境(IDE)开发Win32和.NET应用程序,学习能够使用Borland和.NET库的组合做多少事情哪些开发,了解Delphi现在为什么是Internet的一个较佳选择,以及了解Delphi的许多新增能力,其中包括再加工、单元测试、数据库管理等。本书的主要内容包括使用Delphi语言编写代码,浏览Delphi 2005 IDE,了解Delphi与Microsoft .NET Framework之间的关系,分析Delphi的数据库支持,使用ADO.NET和Borland Data Providers,开发Win32和.NET平台上的多层应用程序,编写可以从Win32移植到.NET平台的应用程序,使用Indy做套接字编程,了解程序员在使用Delphi时可以选择的Web开发技术(包括WebBroker、WebSnap、IntraWeb和ASP.NET),利用Delphi的XML和Web服务支持,以及将ECO框架用于模型驱动体系结构(MDA)。读者对象本书适合各种水平的读者,也是Delphi程序员必备的一本参考书。

图书目录

第一部分基础

第1章Borland Developers Studio 3.0简介

Delphi的版本

IDE概述

IDE的多重个性

一个用于.NET和ALM的全新

IDE

部分安装

用多种配置启动IDE

欢迎使用Delphi 2005

Delphi 2005 IDE结构

桌面设置

菜单

To-Do列表

扩展的搜索结果

Delphi编辑器

Delphi 2005代码折叠和区域化

源代码文件编码

Delphi 2005代码片断

代码识别

同步编辑

编辑器的结构视图

在编辑器中执行浏览

类完成

其他编辑器快捷键

编辑器历史记录

新增的其他编辑器特性

设计器

对象检查器

设计器的结构视图

复制和粘贴构件

项目管理

工具和生成工具

项目文件

项目组文件

项目选项

查看源代码文件

Delphi编程的题外话

Delphi 2005中的C#

UML设计器

IDE数据库工具

小结

第2章win32和Microsoft.NET平台

Win32 APl

OOP类库

构件对象模型

Microsoft.NET是什么

.NET的“营销”目标

为什么营销.NET

VES:虚拟执行系统

CIL:公用中间语言

CLS:公用语言规范

CLR:公用语言运行时环境

.NET编译周期与JIT

管理化执行模型和无用单元收集机制

CTS:公用类型系统

CTS:值类型

CTS:引用类型

名称空间与组件

组件是什么

联编和装载组件

组件版本化和GAC

组件的动态装载

小结

第3章Delphi编程语言

核心的语言特性

类与对象

方法的其他相关信息

动态地创建构件

封装

private、protected和public

私有何时真的私有

用属性做封装

封装与窗体

构造器

析构器和Free方法

Delphi的对象引用模型

赋值对象

对象与内存

继承已有类型

保护型字段与封装

继承与类型兼容性

后期联编与多态性

超越并重新定义方法

虚方法与动态方法的对比

抽象方法

密封类与终结方法

嵌套类型和嵌套常量

类型安全的向下转换

使用接口

异常处理

程序流程与finally块

异常类

记录错误

异常与构造器

类引用

使用类引用创建构件

forin循环

内联

小结

第4章.NET上的DeIphi语言

Microsoft.NET上的Delphi语言

有益的旧单元

全局函数与伪单元类

几乎作为名称空间的单元

单元初始化与类构造器

标识符

限定标识符

统一码标识符

基本数据类型

原始类型

包装原始类型

Delphi的枚举与集合类型

记录

记录还是类

Delphi中新增的预定义记录

引用类型

字符串

使用不安全类型

可变记录

无类型参数

使用new分配内存

使用PChar类型

file of类型已经消失

为了稳妥起见的类型转换

类获得新基础

访问说明符

类数据与类静态方法

类构造器

抽象类

助手类

属性

索引器还是数组属性

给实例应用构造器

调用继承的构造器

无用单元收集世界中的释放与

销毁

类引用与元类

接口现在是“纯粹的”

操作符获得新基础

表征还是极端的RTTI

声明定制的表征

使用Reflect工具检查表征

多点传送事件

小结

第5章Delphi win32运行时库·

RTL的单元

Win32中的System单元

SysUtils与SySConst单元

Math单元

ConvUtils与StdConvs单元

DateUtils单元

StrUtils单元

新增的WideStrUtils单元

Types单元

Variants与VarUtils单元

DelphiMM与ShareMem单元

使用SysUtils单元管理文件

TObject类

显示类信息

TPersistent类

published(公开)关键字

按名称访问属性

列表与容器类

列表与字符串列表

容器类

类型安全的容器与列表

流技术

TStream类

具体的流类

使用文件流

TReader和TWriter类

流与持久性

使用ZLib压缩流

小结

第6章可视化构件库的体系结构

TComponent类

所有权

Name属性

删除窗体字段

隐藏窗体字段

可定制的Tag属性(在Win32和.NET平台上)

VCL for.NET中的TCormponent类

事件

Delphi中的事件

方法指针

事件就是属性

VCL的传统部分

VCL考虑

TControl与派生类

.NET中的TControl与派生类

Parent与控件

与构件大小及位置有关的属性

激活和可见属性

字体

颜色

TWinContro|类

打开构件工具框

文本输入构件

选择具体选项

列表

范围

命令

控件相关的技术

处理输入焦点

控件锚点

使用splitter构件

加速键

使用浮动提示

自绘制控件与样式

ListView与TreeView控件

图形索引列表

数据的树形结构

定制树节点

小结

第7章窗体处理

TForm类

使用普通窗体

窗体样式

边框样式

设置其他窗口样式

直接窗体输入

监视键盘输入

获取鼠标输入

使用鼠标拖动与绘图

在窗体上绘图

特殊图形技巧:A1pha混合、颜色键和动画API

位置、大小、滚动和缩放

窗体强制

滚动窗体

创建和关闭窗体

窗体创建事件

关闭窗体

对话框和其他二级窗体

给程序添加二级窗体

在运行时创建二级窗体

模态窗体与新增的PopupMode

创建对话框

非模态对话框

Windows通用对话框

Application对象

激活应用程序与窗体

处理Delphi 2005中的鼠标激活

使用Screen对象跟踪窗体

创建MDl应用程序

Delphi中的框架与子窗口

MdiDemo示例

MdiMulti示例

可视化窗体继承性

从基窗体中继承

多态窗体

了解框架

框架与页面

无页面的多个框架

基窗体与接口

使用基窗体类

使用接口

小结

第8章用VCL创建用户界面

多页面窗体

PageControl与Tabsheet构件

带有自绘选卡的图像查看器

向导程序的用户界面

Toolbar控件

RichBar示例

工具栏中的菜单和组合框

简单的状态栏

ActionList构件

Delphi中的预定义动作

实际中的动作

动作编辑器的工具栏与动作列表

工具栏容器

控件栏中的菜单

Delphi的停放支持

在ControlBars中停放TooIBar

停放到PageControl构件

Delphi 2005中新增的停放构件

ActionManager体系结构

创建一个简单的演示程序

最近最少使用菜单项

移植现有程序

使用列表动作

小结

第9章Delphi NET运行时库与框架类库

Delphi for.NET的运行时库

Delphi for.NET中的System单元

Delphi运行时DLL:Borland.Delphi.DL

Borland.VclRtl例程

Borland.VclRtl类

基类库(BCL)

Systern.Object类

StringBuffer类

容器类

规则表达式

.NET流

Component类

WinForms库

无DFM文件,只有代码

假朋友与其他差别

WinForms控件

从GDI到GDI+

窗体类

WinForms中没有的VCL特性

小结

第二部分Delphi而向对象体系结构

第10章再加工与单元测试

关于RAD的题外话

敏捷方法学

极限编程

再加工

单元测试

再加工与单元测试组合

Delphi 2005 IDE中的再加工

声明再加工

提取到资源串

重命名再加工

提取方法再加工

查找单元再加工

查找引用特性

Delphi 2005 IDE中的单元测试

DUnit

NUni

其他单元测试提示

小结

第11章动态体系结构(库、包与组件)

Wind32中的DLL

什么是动态链接

DLL的用途

Delphi DLL编写者应遵守的规则

使用现有的DLL

在Delphi中开发DLL

从DLL中导出字符串

调用Delphi DLL

修改库名称

运行时调用DLL函数

内存中的Win32 DLL:代码与数据

使用内存映像文件共享数据

Delphi包

使用运行时包

创建设计时与运行时包

编写与编译包

包的版本管理

使用包的动态体系结构

使用运行时包的应用程序

在运行时装载组件包

使用包的接口

包的结构

从包到组件

编写和使用一个管理化DLL

动态装载一个管理化DLL

从装载到下载

使用组件的动态体系结构

检查组件

小结

第12章COM与.NET互用性

COM与.NET的历史简介

实现IUnknown接口

全局惟一标识符

类工厂的作用

第一个COM服务器

COM接口和对象

初始化COM对象

测试COM服务器

使用接口属性

自动化

调度自动化调用

编写一个自动化服务器

类型库编辑器

服务器代码

注册自动化服务器

编写服务器的客户端

自动化对象的范围

构件中的服务器

COM数据类型

.NET互用性

在.NET中使用COM

在Win32中使用.NET

在COM客户使用.NET对象

在Win32应用程序中使用.NET例程

小结

第三部分DeIphi的面向数据库

第13章Delphi的数据库体系结构

访问Win32中的数据库:dbExpress、本地数据以及其他可选方案

dbExpress库

Borland数据库引擎

InterBase Express

MyBase和ClientDataSet构件

用于AIO的dbGo

定制数据集构件

MyBase:可独立使用的ClientDataSet

连接到现有的本地表

从MIDAS DLL到MidasLib单元

XML和CDS格式

定义新的本地表

创建索引

过滤

查找记录

使用数据敏感控件

网格中的数据

DBNavigator与数据集操作

基于文本的数据敏感控件

基于列表的数据敏感控件

使用查找控件

图形数据敏感控件

TDataSet类

数据集的状态

数据集的字段

使用Field对象

Field类的层次式结构

添加计算字段

查找字段

用字段事件处理空值

导航数据集

数据库表列的总和

使用书签

编辑数据库表列

定制数据库网格

绘制DBGrid

允许多项选择的网格

拖到网格

带有标准控件的数据库应用程序

模拟Delphi的数据敏感控件

向数据库发送请求

分组与合计

分组

定义合计

主/细结构

使用ClientDataSet构件的主/细结构

处理数据库错误

小结

第14章利用VCL数据库构件开发客户/服务器应用程序

客户/服务器体系结构

数据库设计的元素

实体与关系

从主关键字到OID

另外的约束

单向游标

InterBase简介

使用IRConsole

InterBase服务器端编程

dbExpress库

使用单向游标工作

平台与数据库

驱动器版本化问题

dbExpress构件

SQLConnection构件

dbExpress数据集构件

SQLMonitor构件

几个dbExpress演示

使用单个构件或者多个构件

用SetSchemaIn如访问数据库元数据

参数化查询

在单向够用时:打印数据

信息包和高速缓存

更新操作的处理

数据更新

使用事务

使用InterBase Express

IBX数据集构件

IBX管理构件

创建一个IBX示例

创建现场查询

监控InterBase Express

获得更多的系统数据

实际问题

生成器与ID

不区分大小写的搜索

处理位置与人员

创建用户界面

预订课程

创建一个查找对话框

添加一个自由查询窗体

小结

第15章使用ADO

Microsoft数据访问构件(MDAc)

OLE DB提供者

使用dbGo构件

一个实用示例

ADOConnection构件

数据链接文件

动态属性

获取模式信息

使用Jet引擎

通过Jet使用Paradox

通过Jet使用Excel

通过Jet使用文本文件

导入和导出

使用游标

游标位置

游标类型

组合游标位置与类型

无记录计数

客户索引

复制

事务处理

嵌套的事务

ADOConnection属性

锁类型

数据的更新

批更新

开放式加锁

解决更新冲突

不连通的记录集

连接池

持久性记录集

公文包模型

小结

第16章使用ADO.NET

ADO.NET的体系结构

在连通模式中工作

通过OleDbConnect访问数据

通过ODBC访问数据

使用接口的通用数据访问

在不连通模式中工作

使用OleDbDataAdapter

设计时创建DataTable

设计时无现场数据

数据内容构件

数据集数据的直接访问

数据集类中的主/细关系

XML格式的数据集

使用DataView进行分类与过滤

生成定制的数据集类

管理缓存的数据和更新

与ClientDataSet的比较

使用Borland Data Provider(BDP)

配置BDP

使用BDP做可视化开发

BDP的其他特性

BDP模式服务

在VCL应用程序中使用ADO.NET

小结

第17章多层体系结构

DataSnap的技术基础

IAppServer接口

连接协议

提供数据包

Delphi支持构件(客户端)

Delphi支持构件(服务器端)

创建一个样本应用程序

第一个应用服务器

第一个薄层客户

创建一个.NET客户

给服务器添加约束

字段与数据集约束

包含字段属性

字段与表事件

给客户添加特性

更新序列

刷新数据

高级的DataSnap特性

参数化查询

定制的方法调用

主/细关系

使用连接代理

其他的提供者选项

简单的对象代理

对象池

定制数据包

Microsoft.NFT中的多层开发

.NET远程控制体系结构

实际中的.NET远程控制

使用 Delphi构件的ADO.NET远程控制

文际中的ADO.NET远程控制

小结

第18章使用企业核心对象(ECO)

模型

表征

操作

关联

派生的表征:OCL

派生的表征:Code

逆向派生的表征

派生的关联

关联类

ECOSpace

持久性

使用ECO与数据库

创建数据库模式

开放式加锁

用户界面

句柄

ReferenceHandle

ExpressionHandle

数据联编

CurrencyManagerHandle

OCLPSHandle

变量

代码中的ECO

创建对象第一部分

获取一个指向当前选定对象的引用

创建对象第二部分

从代码中执行OCL代码

小结

第四部分Delphi与因特网

第19章HTML与HTTP开发

开发套接字应用程序

套接字编程的基础

使用Indy的TCP构件

使用HTTP

使用IdHTTP构件抓取HTTP内容

Delphi中的线程

TThread类

Winlnet API(Win32)

FCL的WinClient类(.NET)

一个简单的HTTP服务器

生成HTML

Delphi的HTML生成器构件

生成HTML页面

生成数据页面

生成HTML表

使用样式表

来自定制服务器的动态页面

动态的web页面

CGI综述

使用动态库

Delphi的webBroker技术

使用Web APP Debugger做调试

创建多用途webModule

动态的数据库报表制作

查询与窗体

使用Apache

使用IIS

实际示例

一个图形化的网页点击计数器

使用一个Web搜索引擎做搜索

小结

第20章Websnap与Intraweb

WebSnap框架

管理多个页面

服务器端脚本

适配器

定位文件

使用DataSetAdapter

数据集适配器的Web接口

webSnap会话、用户和权限

使用会话

请求登录

IntraWeb

从网站到Web应用

了解内幕

IWSimpleApp程序的源代码

开发IWSimpleApp示例的Delphi

for.NET版本

IntraWeb体系结构

开发Intraweb应用程序

编写多页应用程序

会话管理

集成WebBroker(和WebSnap)

控制版面设计

Web数据库应用程序

链接到细节数据集

将数据转侈到客户端

Delphi 2005部署管理器

小结

第21章ASP.NET体系结构

ASP.NET基础知识

ASP.NET与Web服务器

Delphi中的空白页面

脚本没计技术

了解代码滞后模型

状态管理简介

创建ASP.NET页面

Control类

HTML控件

Web控件

Page类

使用ASP.NET控件的浏览器诀窍

验证控件内容的有效性

ASP.NET中的数据访问

使用数据库

使用Borland的DBWeb构件

开发ASP.NET应用程序

在页面之间转移数据

会话管理

窗体身份验证

ASP.NET中的高速缓存

ASP.NET应用程序部署

小结

第22章使用XML技术

XML简介

核心的XML语法

构造完备的XML

使用XML

Delphi中的XML文档管理

使用DOM编程

TreeView中的XML文档

在.NET中使用XMLDocument构件

使用DOM创建文档

XML数据联编接口

在.NET中使用本机XML DOM

从语法上分析XML

使用SAX API

在.NET中分析XML的语法

使用XSLT

使用XPath

实践中的XSTL

XSLT与WebSnap

直接XSL变换与DOM

ASP.NET中的XSLT

使用变换映射XML

处理大型XML文档

从ClientDataset到XML文档

从XML文档到ClientDataSet

小结

第23章web服务与SOAP

Web服务技术

Delphi win32 SOAP支持

一个SOAP客户:股票报价

在Delphi for win32中创建Web服务

调试SOAP头部

将已有类暴露为Web服务

REST体系结构与Delphi

REST客户技术

创建REST服务器

用于REST服务器的客户

.NET中的Web服务

.NET Web服务客户

创建.NET服务器

SOAP上的数据库数据

访问数据

传递XML文档

客户程序(利用XSLT映射到客户数据集)

SOAP上的DataSnap

处理附件

小结

第五部分附录

附录A了解Delphi的基础知识

Essential Pascal

Essential Delphi

Delphi Power Book

附录B附加的Delphi工具

笔者自己的工具

CanTools向导

对象调试器(Object Debugger)

内存快照(Memory Snap)

其他重要的免费工具

Project JEDI

Gexperts

InstantObiects