正确看待《Delphi高手突破》最后一章的实例

CEdit控件多行文本显示避坑指南:为什么你的SetWindowText总是不换行? 本文深入解析MFC开发中CEdit控件多行文本显示的核心问题,重点剖析了SetWindowText方法不换行的根本原因在于Windows系统换行符要求为`\r\n`。文章提供了从控件属性正确配置、换行符处理到使用SetSel与ReplaceSel高效追加文本的完整解决方案,并附有实战案例,帮助开发者彻底规避常见陷阱。 阅读详情

  《Delphi高手突破》已经出版近一年了,其间有不少读者发来Email,我没有做到每封必回,应该会得罪了不少读者朋友,在此只能说声抱歉了。不过,有不少读者来Email询问关于他们正在构建的系统的技术细节问题,也有读者发来源代码请求帮助的。希望这些读者能设身处地的为我考虑一下,我自己也在上班打工,也要构建老板要求的系统,我写的源代码也有很多问题需要修正,我也想找个人来帮我看看我的代码呀。

  今天,我是想说一下,关于书的最后一章的那个文本编辑器的实例。呵呵,有读者认为设计的过于复杂了,其实我也这么认为。不过,我并不否定在最后一章插入这么一个“复杂设计”的实例。

  首先,这是一本书。书的内容要求连贯,前后一致。这本书的内容其实都是围绕一个主题,就是“如何构建良好设计的代码”,前六章基本都是理论的描述以及很抽象的例子,比如:可乐管里放汽油,呵呵。没有一个实在的实例,读者看完全书都一定还是云里雾里,原先懂的就懂,原先不懂的,还是不懂。有了实例,读者至少对那些理论有一些“落实”的感觉。

  其次,或许对于实际应用来说,这个实例的代码设计过于复杂了。要实现一个文本编辑器,其实不用那么麻烦,呵呵。这种应用,代码规模一般也就在一千到两千行左右,真的要换个编辑器组件,重写一个也不费事。不过,问题是,这个实例还是在书上的,也就是作为一个教具,它的作用不仅仅在于一个示范,而更在于能让读者留下“设计”的印象。因此,“设计”的痕迹就很重,矫枉必须过正。
  另外,我认为,专业程序员的成长会分为三个阶段:
  1、初级,特点:偏重实现,以能实现功能为荣,以此成就感作为前进的激励
  2、中级,特点:随着代码量的积累,想重用以前写的东西,开始关注设计,崇拜设计,以自己的程序中使用了很炫的设计技巧为荣
  3、高级,特点:从“崇拜”设计开始回归,能够轻易构建出较好设计的代码,但不会走火入魔,为设计而设计
  《Delphi高手突破》名称虽然为“高手突破”,但其实并不是写给上述的高级或者中级程序员的(书名是出版社指定的,我也没法,不过你也可以把“高手突破”理解成“成长为高手的毕竟之路的突破点”)。而是写给那些还着重于实现功能的初级程序员的,至少,我是想指出一个提高的方向。

  最后,就是书的篇幅有限,不可能做一个很庞大的应用来作为实例,至少在这本书里是不合适的。中国程序员还是穷的多,书写厚了,买的人少:)。我写这本书的初衷,也还只是希望能给像我曾经一样迷茫的程序员带来一些帮助,唤起某种意识就行了,真要深入学习、研究,一本书绝对不够的。如果你有了这样的意识,可以买大部头来看。

  好久没写文章了,工作忙、人很累是原因,同时对于没有能够收到我的回信的读者,再次说声抱歉。

2003-8-1 珠海

出处:Nicrosoft个人网站,http://www.sunistudio.com/nicrosoft/

Delphi 高手突破 本书是写给程序员的,确切地说,是写给Delphi程序员的,再确切些,是写给已经有了一定的实现能力而欲求寻找一种“突破”的Delphi程序员的。 立即下载

相关推荐

014_《Delphi高手突破

Delphi 教程 系列书籍 (014) 《Delphi高手突破》 网友(邦)整理 EMail: shuaihj@163.com

Delphi高手突破(官方版)_delphi_delphi学习_

Delphi高手突破(官方版)此文件仅供个人学习使用

Delphi高手突破官方版及源码

本书以理论结合实践的方式,论述“如何在Delphi中使用面向对象编程方法,构建良好设计的程序”的主题。本书第1、2、3章以不同于一般书籍的方式,介绍面向对象编程的基础知识及其在Object Pascal中的语言实现。第4、5章介绍VCL库的相关知识,其中第4章为您剖析部分VCL的核心组件源码,第5章介绍定制、设计组件的方法。第6、7章介绍程序构架设计,其中第6章介绍一般性的代码设计准则,其内容可以完全脱离Delphi,因为这些准则是跨语言的;第7章是一个完整的代码设计实例,以编写一个多工作区的文本编辑器为例,从实践角度说明程序构架设计的方法。 本书面向Delphi程序员,特别是写给那些已经具有一定的实现能力而欲求寻找一种“突破”的Delphi程序员,作为他们提高的参考用书,同时也可以作为高校学生以及程序爱好者的参考用书。

Delphi高手突破学习笔记一

一、Object Pascal中对象生存与销毁的秘密 每个应用程序可以获得的内存空间分为两种:堆(heap)和栈(stack)。 堆又称为“自由存储区”,其中的内存空间的分配与释放是必须由程序员来控制的。例如,用GetMem函数获取了一定大小的内存空间,则在使用完后,必须调用FreeMem函数将空间释放,否则就会发生所谓的“内存泄漏”。 ...

weixin_34380948的博客 145

Delphi高手突破》学习笔记(一)

  《Delphi高手突破》据说挺不错,他用面向对象的观点描述了Delphi中的类和VCL架构。  第二章、面向对象编程理论基础设计优良的类的某些共同特征:具有状态信息,接口简单、明了,易用。在OP的类中,有四种访问级别:private、protected、public、published。其中public中的成员可以被所有客户代码直接访问;published中的成员和public差不多,

放飞梦想 1628

delphi高手突破之异常及错误处理

delphi高手突破之异常及错误处理

w36680130的博客 187

delphi高手突破学习笔记之面向对象类和对象的本质

知识点1:堆和栈 每个应用程序可以获得的内存空间分为两种:堆(heap)和栈(stack)。 堆又称为“自由存储区”,其中的内存空间的分配与释放是必须由程序员来控制的。例如,用GetMem函数获取了一定大小的内存空间,则在使用完后,必须调用FreeMem函数将空间释放,否则就会发生所谓的“内存泄漏”。“借债还钱,天经地义”。 栈又称为“自动存储区”,其中的内存空间的分配与释放是由编译器和系统

苏生-苏米沿的专栏 2862

你为什么成了程序员?又为什么还不换行?

敲代码的路上似乎从不缺选手,越来越多的人走向了程序员岗位。现在的你,或许是刚入行的职场新人,又或许是混迹已久的职场“老油条”。回想当年,还记得自己是因为什么而成为了一名程序员的吗?又或者反思当下,自己还想继续敲代码吗?如果想,什么又是支撑你一直走下去的理由呢?归纳发现,这里充满了各式各样的选手: 01自然而然型选手 这类选手通常是IT或者IT相关专业出身,毕业的时候和大...

田维常 432

为什么按着左右键一直到边缘不换行了?

为什么按着左右键一直到边缘不换行了? 平时都是在键盘上按着左键或者右键光标会一直移动并且还能换行,今天不知道咋地就不能换行了,搜索百度也没有好的答案 然后自己将那个代码页面关闭,在别的代码里试试,发现没问题,但是就是那一个页面发神经了,只能关掉,再打开试试 ...

西山枫叶 630

Jsp 中out.println()为什么不换行

今天写了一串jsp代码,本想着使用out.println()会实现换行,然而结果却没换行。 先看代码:<%--使用out.print("Hello JSP");方式输出 --%> <% for(int i=0;i<10;i++){ out.println("Hello JSP"); } %>输出结果是这样的: 百度后找到原

高筑墙,广积粮,缓称王 7934

python中简单使用进度条效果-为什么\r会不换行的?

这是今天在处理一个小问题时,遇到的,后来查了查,用ai生成的,算是工作记录吧。

lwprain的专栏 478

Delphi高手突破

想成为Delphi高手的必读书

Delphi高手突破》PDF清晰完整版

Delphi高手突破PDF电子书,完整不缺页,插图清晰。

Delphi高手突破》完整版

本书籍是适合于已经掌握delphi开发工具,但想在这个领域“突破”的delphier.包括深入认识delphi,吃透面向对象编程理论基础,掌握异常及错误处理,更深入学习VCL原理及使用。熟练使用指针等知识点,保证您不看不知道,一看忘不了

Delphi高手突破(官方版).rar

Delphi高手突破(官方版)

delphi高手突破.rar

delphi高手突破,适合有一定编程基础的人学习参考

delphi高手突破源码

delphi高手突破源码

上一篇: 《Delphi高手突破》节选--脱离VCL的Windows程序
下一篇: 天气真好,睡觉去
Nicrosoft
博客等级 码龄26年 9粉丝 45原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值