具体描述
内容简介
本书全面深入地介绍了当今最热门的编程技术,包括COM、ActiveX、Web服务
器应用程序,以及Internet上的WinSock、UDP、HTTP、HTML、FTP、SMTP、POP3、
NNTP等协议。本书由16章组成,主要内容包括面向对象编程,组件对象模型(COM),
ActiveX框架,“TypeLibrary ”编辑器,创建ActiveX,OLE自动化,使用WinSock,使
用FTP控件,使用UDP控件,使用HTP控件,使用HTML控件,使用SMTP控件,使
用POP控件,使用NNTP控件,创建Web服务器应用程序,Web服务器的细节。该书
主要是为那些想在Internet/Intranet领域编程的读者写的,不是一本C++Builder3的入
门参考书,本书虽然是针对应用和开发C++Builder3的技术人员编写,但其中很多内
容具有普遍性,对使用其他开发工具的读者也有一定的参考作用。
作者简介
目录信息
第一章 面向对象编程
1.1什么是对象
1.2修改元件的名称
1.3对象的作用域问题
1.4类成员的可见性
1.5对象的相互赋值
1.6自己创建一个对象
1.7VCL的结构
1.8TObject
1.9TPersistent
1.10TComp onent
1.11TControl
1.12TWinC0ntro1
1.13TGraphicContro l
1.14TCustomContro l
第二章 组件对象模型(COM)
2.1几个基本概念
2.2客户和服务器
2.3认识GUID CLSID IID
2.4引用计数
2.5什么是IUnkn0wn接口
2.6DLL形式的COM服务器
2.7接口
2.8调度接口
2.9双重接口
2.10对接口的引用
第三章 ActiveX框架
3.1什么是ActiveX框架
3.2TInterfaced Object
3.3TCom Object
3.4TTyped Comobject
3.5TAuto Object
3.6TAuto IntfObject
3.7TActiveXControl
3.8TComServerObj ect
3.9TC0mServer
3.10TActiveForn
3.11TPropertyPage
3.12TComObjectFactory
3.13TTypedComObjectFactory
3.14TactiveXPr0pertyPageFactory
3.15TAutoObjectFactory
3.16TActiveXControlFactory
3.17TActiveFormFactory
第四章 “TypeLibrary”编辑器
4.1关于类型库的概述
4.2创建一个新的类型库
4.3“TypeLibrary”编辑器的窗口
4.4类型库的一般信息
4.5接口
4.6在接口中加入成员
4.7调度接口
4.8类型库枚举
4.9组件类(CoClass)
4.10把类型库引入到当前项目中
4.11刷新、保存、注册和发布类型库
第五章 创建ActiveX控件
5.1创建和使用ActiveX控件
5.2向导创建了哪些文件
5.3编辑类型库
5.4创建特性页
5.5注册和安装ActiveX控件
5.6怎样使用ActiveX控件
5.7ActiveForm
5.8在Web上发布ActiveX
第六章 OLE自动化
6.1怎样操纵自动化对象
6.2怎样创建自动化服务器
6.3自动化对象的类型库
6.4创建InProcess型的自动化服务器
6.5注册和调试自动化对象
第七章 使用WinSock
7.1关于Socket的概述
7.2建立服务器端Socket
7.3建立客户端Socket
7.4怎样在网络上传输数据
7.5TCust0mWinSocket
7.6TClientWinSocket
7.7TServerWinSocket
7.8TServerClientWinSocket
7.9TWinSocketS tream
7.10一个网上交谈(Chat)程序
第八章 使用FTP控件
8.1FTP控件的特性
8.2FTP控件的方法
8.3FTP控件的事件
第九章 使用UDP控件
9.1使用UDP控件的一般步骤
9.2UDP控件的特性
9.3UDP控件的方法
9.4UDP控件的事件
第十章 使用HTTP控件
10.1HTTP控件的特性
10.2HTTP控件的方法
10.3HTTP控件的事件
第十一章 使用HTML控件
11.1HTTML控件概述
11.2HTML控件的特性
11.3HTML控件的方法
11.4HTML控件的事件
11.5几个与HTML控件有关的对象
第十二章 使用SMTP控件
12.1SMTP控件的特性
12.2SMTP控件的方法
12.3SMTP控件的事件
第十三章 使用POP控件
13.1POP控件的特性
13.2POP控件的方法
13.3POP控件的事件
第十四章 使用NNTP控件
14.1NNTP控件的特性
14.2NNTP控件的方法
14.3NNTP控件的事件
第十五章 创建Web服务器应用程序
15.1WWW是怎样工作的
15.2静态的HTML页面
15.3动态的HTML页面
15.4怎样与客户交互
15.5交互生成页面
15.6与数据库的连接
15.7怎样调试Web服务器应用程序
第十六章 Web服务器的细节
16.1Web服务器应用程序的逻辑结构
16.2Web模块
16.3Web调度器
16.4动作项
16.5HTTP请求消息
16.6HTTP响应消息
16.7页面生成器
16.8操纵Web服务器应用程序
16.9Web服务器与数据库
· · · · · · (收起)
读后感
用户评价
拿到这本书的实物,首先映入眼帘的是那种略带泛黄的书页质感,油墨的味道混合着年代感,很有味道。我本来以为这会是一本晦涩难懂的技术宝典,但阅读体验却出乎意料地流畅。作者在讲解抽象概念时,总能迅速地结合具体的代码示例来阐释。我尤其关注了它关于数据库访问的部分,因为这是当时商业应用开发的核心痛点。书里详尽地介绍了BDE(Borland Database Engine)的配置和使用,以及如何通过ADO/ODBC进行跨平台(在当时而言)的数据连接。令我印象深刻的是,作者不仅讲解了如何实现数据的增删改查,还深入探讨了事务处理和数据锁定机制在多用户环境下的实现细节。这些内容在如今的ORM(对象关系映射)盛行的时代,几乎成了“失传的技艺”。通过这本书,我仿佛重新进入了那个需要手动管理连接池、优化SQL查询以适应低带宽网络的时代。书中对于如何优化界面响应速度的章节也值得称赞,它没有一味依赖IDE的优化,而是教导读者如何通过线程同步、消息队列的底层调用来避免UI冻结。这种对底层性能的执着,是现代很多快速开发工具所欠缺的。这本书更像是一位经验丰富的老工程师,手把手地教你如何把螺丝拧紧,而不是简单地给你一把电动螺丝刀了事。
这本书的结构组织非常严谨,逻辑链条清晰到近乎苛刻。我注意到,作者似乎非常注重“设计模式”在实际项目中的应用。与其说是编程技术,不如说它更像是一本“如何用C++Builder 3构建可维护大型应用”的实战指南。书中对GoF设计模式(比如观察者、工厂模式)在VCL框架中的自然映射和变通应用进行了深入的探讨。例如,它不是简单地告诉你如何使用事件处理器,而是将事件处理机制提升到“观察者模式”的视角进行解读,这极大地提升了我对事件驱动编程的理解深度。更令人耳目一新的是,书中对编译器的特定优化选项和链接器行为的分析。在那个年代,编译器层面的微调对最终程序性能的影响是显著的,而这本书毫不避讳地展示了如何通过调整特定的编译指令来榨取每一分性能。我甚至找到了一些关于如何与外部动态链接库(DLL)进行高效数据交换的详尽章节,包括数据结构对齐和字符串编码处理的注意事项,这些都是在现代跨语言调用变得更便捷之前,开发人员必须掌握的硬核技能。它成功地将理论知识与那个特定编译环境下的工程实践紧密地结合在了一起。
这本书的出版时间着实让人捏了一把汗,毕竟C++ Builder 3这个版本,在如今这个快速迭代的软件世界里,已然算是“古董级”的存在了。我手里这本厚厚的砖头书,拿到手里沉甸甸的,光是封面设计就透着一股浓厚的上个世纪末的技术气息。我原本是抱着“考古”的心态来翻阅的,想看看当年那些经典的设计思想和编程范式是如何在这个特定框架下实现的。然而,翻开内页,我立刻意识到自己可能误判了。这本书的深度和广度,远超我对一个特定版本IDE配套教程的想象。它并没有过多纠缠于IDE本身的界面布局或菜单操作,而是迅速切入了VCL(Visual Component Library)的核心机制。我特别欣赏作者对内存管理和指针操作的细致讲解,尤其是在处理旧版C++与Windows API交互时的那些“陷阱”和“捷径”。例如,书中有一章专门剖析了VCL组件生命周期中,事件处理函数与底层消息循环是如何协同工作的,这部分内容即便是现在使用现代框架,理解其背后的机制也大有裨益。它不是一本简单的“如何拖拽按钮”的速成手册,而更像是一份深入底层的“解剖报告”,展示了在那个时代,高效、稳定地构建Windows应用背后的工程哲学。对于希望理解MFC或早期Delphi/C++Builder设计模式的资深开发者而言,这本书提供了一个宝贵的历史视角,让我们得以窥见现代UI框架是如何一步步演化而来的。它让我重新审视了某些被现代框架“封装”起来的复杂性,并体会到当年开发者们为了性能和功能所做的权衡与智慧。
我购买这本书主要是为了参考其关于用户界面(UI)和用户体验(UX)设计的处理方式,特别是如何在资源受限的环境下实现“流畅感”。翻阅下来,发现它在UI布局管理上的处理哲学非常值得现代开发者借鉴。书中详细介绍了TForm、TPanel等容器组件的绘制流程,以及如何利用Windows GDI/GDI+的API进行自定义绘制,以超越VCL提供的默认外观。我被书中关于“双缓冲技术”实现无闪烁重绘的章节所吸引,作者提供的代码片段虽然略显繁复,但其对绘图上下文(DC)的精确控制,展示了那个时代开发者对图形渲染的深度掌握。这本书并没有过多介绍后来的.NET或Java Swing/AWT中的抽象布局管理器,而是聚焦于如何通过精确计算组件的位置和尺寸,以及合理的事件处理顺序来避免界面假死。此外,书中关于应用程序状态的管理和序列化存储的章节,也提供了一种非常扎实的、基于文件系统的持久化方案,这与现在流行的云同步和NoSQL存储理念形成了鲜明的对比,但其稳健性和对数据一致性的强调,在特定领域仍然具有参考价值。这本书像是一位老匠人,展示了如何用最基础的工具,打磨出精良耐用的物件。
坦白说,我对C++ Builder 3这个平台其实并不十分熟悉,我的起点是更新的IDE和语言标准。因此,当我翻开这本《C++ Builder 3核心编程技术》时,我的主要目标是探寻其跨平台(当时的概念)的组件封装逻辑。书中的内容确实展现了Borland在组件化编程思想上的超前性。然而,这本书的阅读门槛对于初学者来说,可能高得有些离谱。它几乎没有为那些不熟悉C++基础语法或面向对象设计的读者留出缓冲地带。它直接假设读者已经精通指针、引用,并且理解编译和链接过程。我特别花时间研究了它关于异常处理和资源获取即初始化(RAII)原则在VCL环境下的应用。虽然书中引用的标准库版本较旧,但作者在讲解如何利用C++的特性来弥补IDE自身在某些方面的不足时,展现了极高的技巧。例如,如何手动管理动态分配的组件生命周期,以防止在复杂的继承结构中出现悬空指针或内存泄漏,这部分内容即便是在今天维护遗留系统时,也是至关重要的。它强调的不是“怎么做”,而是“为什么你必须这么做”,这种思维方式的引导,远比单纯的API参考手册有价值得多。