作者:empty 页数:266 出版社:empty |
本书通过开发串通讯程序、万能图形编辑器、通用表格编辑器、逻辑梯形图编辑器、CMS数据读写本书主要读者对象是有志开发共享软件的在校学生、程序员以及编程爱好者,也可以作为计算机软件专程序、多声卡音频自动播出系统、报表打印与动态连接库、坦克大战游戏、系统编程——键盘监视、服务程序定时关机、进程隐藏——监视系统键盘、局域网编程、再谈Win32SDK编程13个编程技巧, 以及工作任务管理器、桌面提示器、邮件群发程序3个软件编程实例使读者学习和掌握Dei phi开发应用软件的技巧和方法。
本人1990年毕业于北京大学,是一个学化学的研究生,其后在一所学院教书,业余喜欢岁月不饶人, 如今写程序已不再是首要的事情了, 因而决定要写这本书。关于Delphi的本书是一本中高级的程序设计实用书籍,以提高软件设计能力为目标,特别对有志成为2.1.1事件对象的使用…65.6.4类T Test LG的实现….732.1.2接收数据线程…*85.7关于逻辑梯形图路径的遍历.…792.1.3发送数据线程…85.8总结…捣鼓计算机。经过6年自低级到高级的辛勤钻研,自学成“菜”之后便下海了。在市场经济的这块“商海”中游历了十余年后,因某种原因又重新回到了学校,小康目标没怎么实现,只是多了些人生的经历和教训, 也不算后悔吧, 直到现在还偶尔写点程序。回想自Windws 95出来后, 在DS环境下靠C/C++写程序的日子基本宜告结束, 随后便选择了Delphi作为Windws下的开发工具进行着程序开发的工作。多年的经历, 使我总想写一本书。加之以前的很多学生, 也有经常问及一些Delphi开发方面的问题, 更促进了我的写作愿望。但还是担心自己的能力,怕误人子弟,故迟迟未敢下笔。书籍,书市上确实很多了,从入门到提高、实战、高级、大师、深度、黑客等,以至于给书本取个名字都很难啊。干脆取个俗名吧, 就叫“Delphi宝典”, 就像武林江湖一样, 软件开发行业中,程序员也各有自己的拿手好戏,诚然没有哪门工夫可以独霸天下,“葵花宝典”也一样(照样被独孤九剑所败) , “Delphi宝典”充其量也不过是散打水平, 学好了总能抵挡一些猫脚工夫, 可以行走江湖吧。后来考虑到“宝典”实在太多, 便取名“用Delphi开发共享软件”,因为我自己多年来, 也一直用Delphi编写共享软件并维持家庭部分开销的。共享软件的开发者很有帮助。它用专业的共享软件或已商品化的软件作为实用例子步步引导读者走入Delphi程序设计的更高境界。十多个精心挑选的应用实例, 覆盖了Widws下编程的许多方面, 让Delphi的已入门者, 不仅感受到Delphi的强大功能, 更重要的是学到程序编写的经验技巧,同时充分领略面向对象程序设计的技术优越性和强大功能。本书主要读者对象是有志开发共享软件的在校学生和程序员,也可以作为计算机软件专业教学第二课堂的培训教材。随书所附光盘中还收集了作者多年来积累的一些第三方组件和自己开发的几十个组件,以及和本书技术相关的作者开发的商业软件。该光盘也使得本书真正物有所值。本书编写过程中,得到了不少同志的帮助,没有他们的支持,难有此书。在此表示诚挚的感谢。疏漏和不妥之处在所难免,请读者多提宝贵意见。
绪言程序员走过的路,可能有四个阶段:学了几门编程语言后开始从事初级的编程工作;有“入门容易提高难”的另外一个原因, 可能与教学有关。课堂上学习了Pascal语法和些经验后,可依靠“技巧”进行更高些层次的编程:滚打四五年后,有些经验总结,凭借“技巧“和经验能解决一些实际问题:在实际开发过程中,不断总结领域内开发经验,系统学习设计分析理论和工具,最后达到需求捕获、分析问题、解决问题的能力,即所谓专家。这本书的读者对象应该定位在接近第三阶段的水平上。1.2本书学习方法Delphi像Basic一样, 是一门入门容易提高难的编程语言。很多程序员便选择了用它来编写数据库应用程序,于是难度降低了许多。本书不想涉及这个领域,而是讲一些基本的“实用”技巧, 对于“入门容易提高难”这一说法, 可能是因为VCL非常完善, 满足了我们大多数应用程序开发的要求, 所以对Windws核心技术的深入和AD(面向对象的分析设计)的学习,根本就难得理会了,而VC则有所不同,VC程序员不得不做一些深入学习来研究MFC, 其实也就是要去学习大量的Win32API.如果你想成为高手, 必须一样去深入学习!本书也不是一本入门书籍, 所以还希望您是一个有一定入门基础的编程人员。先学好Pascal语法,然后读几本我国台湾编程大师李维的书。学习是一门扎扎实实的事情,需要付出艰辛的劳动和时间。作者第一次写非可视串通讯组件, 我打印了所有不明白的API函数, 足足有密密麻麻的100多页, 还有20多页的源代码(为什么要打印出来?根据一些研究报道,人脑在阅读时,只能对最近的3~4页内容有较好的印象,如果您不具有非常强的记忆力的话,建议打印阅读资料,尤其是超过100页的资料)。作者花了足足两个月的时间来阅读理解。一些面向对象的编程思想,却很少有实践的机会,特别是参与到实际的应用系统的开发中,就算作了一个小课题,也是没有什么实际价值的。本书使用了十几个实用的或商用例子,每章讲一个主题,作为学习的扩展,希望展现怎样用学到的知识来完成实际的有点价值的应用。作者一直认为:“天才不多,多看、多思考、多练习,才是提高实战能力的最好途径,三者缺一不可,并且承前启后,”多看,才能思路开阔,才能发现自己知识的狭隘。多写的前提是需要多想,盲目地写,价值很低。我们常听人说:看别人的程序,不如自己重新写一个!其实不然,真正看懂和思考专家写程序的思路和方法,胜过您自己写100遍无聊的代码。当然,没有实际在计算机上实现“学到”的东西,最后还是不能成为自己的知识。本书的特点之一,就是在部分关键源代码中,作了详细的说明和注释,试图让读者能感受到编写代码的思路,必要时,还会绘制程序流程图,节约读者时间。另外,每章后面,都附有几道习题。老师当多了,总想出点题目。题目难度应该在程序员水平。光盘给出了一种答案。有关Delphi的书籍确实很多, 但真正教会您真枪实弹地开发设计过能成为商品的软件几乎没有。我们能从每本书中吸取一点有用的知识,就已经感到很满足了。本书试图打破这种格局。本书中的许多“共享软件”,你加以改进和扩充,就可以拿来作为商品使用了。这就是共享软件!
1.3Delphi开发分类修正。语言只是一门工具。只是由于VC是Windws操作系统开发者的产品, 似乎与操作系统结合紧密, 好像这样就变成了真正的程序员。作为一门真正面向对象的编程语言(P L) ,Delphi有它独到的优势; 其实, 微软C#的语法, 与Delphi非常相似:不提倡使用指针类的单继承, 异常机制(C#首席设计师就是Brland的大师、Pascal编译器创始人, 即Delphi之父Anders Hejlsberg:我们在C#中看到了许多Delphi的影子) 。这里不讨论这些问题:只想谈一下个人对使用Delphi开发方向分类的看法。应该说, Delphi在目前流行的RAD编程工具中,是“无所不能”的,网上也报道了用它编写驱动程序的例子。以下几个方面的应用,作者认为它应该是Delphi的拿手好戏。等许多的优秀软件就是用Delphi开发或改进的。Delphi天生就是数据库信息系统开发的超级优秀工具。
“聪明的程序员用Delphi, 真正的程序员用VC”, 这句常挂在程序员头的谬论, 应该(1)数据库信息系统的开发,特别是在多层分布式系统开发中。据称像“速达”、“用友”(2) WebService应用系统。它是目前最热门的系统开发软件:Delphi对它提供了非常好的支持,仅数数它提供的服务组件,就让人感觉它是大师级的专业工具。目前的Delphi 2006(也称BDS2006:BrlandDevelperStudi2006) 对该领域的支持, 简直是天衣无缝:在IDE中可视化建立符合UML的企业逻辑模型, 自动生产生成服务代码框架和后台数据库。现在大量的网络游戏, 却很多是用Delphi开发的。甚至, 许多局域网游戏, 也改用Delphi编写了。出现了专门生产组件的程序员和公司。(3) 游戏程序设计。以往总认为只有VC才是Windws游戏程序编写的源生工具。可是(4) 组件及组件库设计。由于Delphi编写VCL组件或CM组件都非常的方便和出色,(5) 共享软件[shared sftware] , 即通用/专用软件的应用系统, 大多为桌面应用程序。共享软件是一种先试用、后购买的软件,并不是免费软件。它的特点是实用性很强,但软件本身规模并不大。像Windws优化工具、迅雷、Winrar、各种媒体播放器、小型游戏程序、桌面秀等,范围非常广:这里罗列一些应用领域:计算机自动控制、电视监控、多媒体制作、教学软件、电子地图、网络工具、计算机安全系统管理、图文处理、各类解压缩算法等。应用领域太广,似乎让人不知所措。读者应根据自己所在领域,有所重点发展方向。笔者主要从事计算机自动控制软件系统和多媒体软件的设计开发,欢迎同行一起交流心得。
1.4对共享软件的看法大约有50%的是用VC编写的, Delphi大约占45%。尽管共享软件作者中有不少买奔驰宝马,但大部分是很寒酸的(很多人都是业余爱好者,还不能真正靠它生存)。只有您的软件被广大用户接受,您才能致富。中国目前也有好几万共享软件作者,大部分需要好几年的时间,月市场。共享软件突出实用性、专业性,能很好解决某个问题就能赢得市场。很多调查表明,统。所以共享软件适合于个人开发(但也有软件公司开发共享软件的),开发周期一般在三在开发了。要想占有一席之地,只能靠更好的质量和功能。当然,易用性也很重要,因为共由于本书涉及共享软件开发,这里提一下本人对共享软件开发的几个观点。收入才能达到万元。在中国,能达到5000元也就很好了。一些不很实用又不完善的功能,往往导致销售量下降:所谓的高版本不如低版本。个月左右。
享软件的使用者大部分不是计算机专业人士,更不是软件开发人员。(1)不要指望一夜暴富。根据2006年国外共享软件网站的一些报道,目前的共享软件(2)不要以为软件技术高,就能卖好价钱,就会有很多用户;也不是功能越多就越能有(3)共享软件要短小精悍。很少有容量大于10M的软件,除非功能非常全面的一些系(4)软件质量和功能是生存的基本前提。可以说,您能想到的每一个领域,都已经有人1.5支持源代码开源虽然,程序员靠编写程序养家糊,都不想砸了自己的饭碗,但知识是人类的共同财富,我们的绝大部分知识(应该超过95%吧) , 来源于对前人知识的积累。我个人认为, Linux的开发规则,应该值得提倡。除非是自己开发的源代码,否则都应该公布,修改的版本也一样。只是目前程序员们不愿意把自己的代码公布。尽管如此,作者还是提倡开源;本书所有章节的源代码和组件源代码都公布不漏。希望读者能发扬共享精神。1.6关于系统分析师该往系统分析师的方向迈进。本书,不涉及系统分析师的广泛领域,但建议读者阅读一些系统分析师常用的关于分析设计方法的书籍;实际上,程序员都在无意识中向着系统分析师方向迈进。真正要达到能独立开发系统的能力,仅靠会编写程序是不够的。我个人认为,程序员应1.7关于计算机语言计算机软件技术和语言发展迅速,让IT行业的程序员学习新技术感到力不从心。常常感觉到刚学习入门,还没有应用开发过像样的系统,又要花时间去学习新东西,结果一事无成。我感觉,中国的计算机程序员资格和水平考试是很务实的,掌握基本的知识,才能以不变应万变。如果您专门搞学问研究,站在技术前沿是对的,可如果您从事应用系统设计开发(就像共享软件作者一样),那千万别冒技术风险,因为那可能让您一败涂地。成熟稳定的系统才是满足用户要求的基本前提。计算机语言从汇编到Basic, 到C/C++、
Pascal、Java到现在的C#、Net, 几百种语言, 不可能一一精通。Delphi由于Brland公司的原因, 它的市场占有份额似乎有所降低。但仍然在发展, 优势仍然明显, 特别是Delph2006版本, 仍然是目前最受欢迎的RAD开发平台。早在Delphi 7版本, 它就几乎涉及了应用软件开发的方方面面,值得您学习,何况它成熟的技术、强大的功能、前所未有的开发效率, 是其他语言环境无法提供的, 本书中所有的软件, 都在Delphi 7中调试通过。如果您已经入门了,那么赶快提高吧,在您用它开发出真正实用的共享软件后,您是不会后悔的。