其他编程语言/工具
-
对等网络编程源代码解析(美)Dreamtech软件研发组著;吴文辉[等]译;吴文辉译本书详细讨论了P2P模型程序的设计、实现和编码。通过对带有完整源代码的应用程序的分析使读者知道怎样设计自己独特的P2P应用程序。还介绍了P2P所必需的概念并复习了网络和网络协议。此外,本书详细说明了使用Java和C#构建P2P应用程序的有关步骤。第1章简要介绍了P2P的历史、各种P2P模型共享资源的搜索以及对本书中将要讨论的P2P应用程序的简要描述。第2章讨论设计P2P应用程序的技术。包括设计P2P应用程序时的注意事项,解析XML的方法等。第3章到第7章讨论具体的代码,研究实现技术,包括Java版和C#版。同时还介绍了Microsoft SQL Server 2000的使用、ASP编程、P2P应用程序设计等内容。附录介绍光盘上的内容,所有例子的代码都可以在本书的附带光盘中找到。本书适用于有一定基础,并希望进一步提高网络开发技术的人员。 -
CASL程序设计教程刘克武,李冰,李冬梅编著CASL是建立在一种假想机上的汇编语言系统,汇集了当今主流PC机的指令结构和功能。本书以程序设计为纲,全面系统地介绍了CASL汇编语言。全书共分9章,分别讲述了CASIL程序设计环境、伪指令和宏指令、数的存取和传送、算术运算和算术操作、逻辑运算和逻辑操作、比较与转移、数据栈与子程序、程序设计基础和例题分析等内容。本书每章后面都附有习题,供读者练习参考。本书可作为高等院校汇编语言程序设计课程的教材,也可供参加“中国计算机软件专业技术资格和水平考试”的考生备考使用。 -
即时消息传递系统编程源代码解析(美)Dreamtech软件研发组著;姬孟洛[等]译本书详细地描述了如何编写即时消息传递应用程序,包括即时消息传递的概念、设计方法和源程序代码以及程序代码的详细解释(服务器、客户以及手持设备等方面)。全书简要描述了即时消息传递应用的概念、范围及其演变过程;叙述了应用程序的设计过程以及开发必备的知识;详细描述了Java版和C#版服务器模块的程序设计以及代码清单和解释,Java版和C#版客户模块的程序设计以及代码清单和解释;最后,描述了如何开发手持设备的即时消息传递应用程序。本书内容丰富、讲述层次分明、清晰细致,主要面向中高级水平的程序员和开发者,也可供对即时消息传递有兴趣的初学者和研究人员参考。 -
用Python学编程(美)Alan Gauld著;刘彩虹,张光庭译;刘彩虹译本书以语法简单、功能强大且免费的Python语言为范例,循序渐进地讲解计算机编程的基本原理与应用,既不涉及深奥的编程理论,也不讨论任何语言细节,而是利用一些关键结构来表示问题,可把这些结构翻译成任何一种适合解决该类问题的语言。全书分4部分,共23章。每章讨论一个主题,开头有简单的内容提要,结尾有启发思考的问题和小结。内容涉及编程的概念和理论、数据、运算符、4种基本编程结构,以及面向对象编程的高级主题,最后教读者利用所学内容一步步地制作出两个综合案例。这是一本专为计算机编程初学者编写的教学参考书,适合没有任何编程经验的用户学习使用。 -
STL源码剖析侯捷著身为C++标准库最重要的组成部分,STL(标准模板库)不仅是一个可复用组件库,而且是一个包罗算法与数据结构的软件框架(framework)。“框架”这个词,本身就有庞大、稳定、完整而可扩展的涵义。软件框架,则是用一行行精细准确的源码,构造一个庞大、稳定、完整而可扩展的软件架构,稍有软件开发经验的人都知道,要做到这些,谈何容易! STL在1994年走入C++标准,使得原本即将推出的C++标准延迟4年问世而无怨无悔,并为之对内容做巨幅改进,而今STL不仅为千千万万C++程序员所日常运用,而且获得极高的学术赞誉,成为了一个典范,一种境界。作为一个软件框架,STL所取得的成功,实在可以用“辉煌”来形容,其所内涵的软件思想和技术经验,更是无比的深厚与精致。学习编程的人都知道,阅读剖析名家代码乃是提高水平的捷径。源码之前,了无秘密,大师们的缜密思维,经验结晶,技术思路,独到风格,都原原本本地体现在源码之中。在你仔细推敲之中,迷惑不解之时,恍然大悟之际,你的经验、思维、视野、知识乃至技术品味都会获得快速的成长。特别是面对STL这样优秀而普遍的作品,无论你是为了满足作为程序员第二天性的求知欲,还是在日常工作中解决实际问题,总会有一天,你会打开一个叫做或者的头文件,想把STL背后的秘密看个究竟。英文里有一个常用短语,叫做“under the hood”,钻进魔术师的帐篷,屏住呼吸,瞪大眼睛,把那些奇妙的魔法看个通透,让自己的理解和技艺获得巨幅的提升,这种诱惑,任何一个程序员都无法抵挡!不过,想要研读STL源码,绝对没有那么简单。STL是精致的软件框架,是为优化效率而无所不用其极的艺术品,是数据结构与算法大师经年累月的智慧结晶,是泛型思想的光辉诗篇,是C++高级技术的精彩亮相,这些灿烂的赞誉,体现在数万行源码里,对于一个初涉此道的学习者来说,就是一个感觉:“难!”。无论你是会浅尝辄止地退出这次探险,还是勇敢地向浓雾中前进,当你受困于STL精致的大网之中,为那些迷一般的结构和动作感到茫然无措的时侯,所有人都会冒出一个念头:“如果有这样一本书,既能够提纲挈领,为我理顺思绪,指引方向,同时又能够照顾小节,阐述细微,帮助我更快更好地理解STL源码,那该有多好!”望着长长的STL著作列表,一个“真正”的C++程序员,多少会有一点遗憾。自从STL问世以来,出版了大量的书籍,帮助读者了解它的思想,学习它的用法,掌握它的技巧。其中佼佼者如Matt Austern的《Generic Programming and STL》,Nicolai Josuttis的《The C++ Standard Library》,Scott Meyers的《Effective STL》,已成C++经典名著。然而,定位在引导学习者进行STL源码分析的著作,可以说是凤毛麟角。毕竟,既要能高屋建瓴,剖析大架构,不为纷繁琐碎之细节而迷乱,又能具体而微,体现细致之处的精妙缜密,不因为宏大体系而失之粗略,无论对于专家高手还是技术作者,都是太难达到的目标。读了这本《STL源码剖析》之后,我认为,这个遗憾终于被补足了!本书的作者侯捷先生是蜚声海峡两岸的著名IT技术作家,在C++,Windows系统原理,泛型理论和STL等技术领域有极深的造诣。然而,侯先生最令人称道之处,乃是他剖析大架构的能力。所谓剖析大架构,就是要在洋洋洒洒数以万行计的源码中,精准定位,抽取核心观念,高屋建瓴,纲举目张,将看上去乱麻一般的源码梳理得头绪清晰,条理分明,同时又照顾细节,参透精微,把一个个关键动作阐述得通通透透,这种能力,我以为至少在华人技术作者中,侯先生堪执牛耳。在他的名作《深入浅出MFC》中,侯先生将自己这方面的能力展现得淋漓尽致,而在这本《STL源码剖析》中,我们又看到了一次更加精彩的表现。我有机会作为大陆最早的几个读者之一,详细拜读了侯先生的这本最新STL专著,感到了一种强烈的技术冲动,说得俗一点,就是觉得很过瘾!具体来说,我以为这本书至少有四大特点,使它成为我所见过的最出色的一本STL源码剖析类著作。首先,选材精当,立足高远。STL是一个标准,因而有各种实作版本。本书所剖析的SGI STL,可以说是设计最巧妙,思想最深刻,获得赞誉最盛,认同最广的STL实作。当然,这份出自STL之父Alex Stepanov,以及Matt Austern,David Musser等巨匠之手的经典作品,剖析阐述起来自然也需要花费更大的心力。侯先生籍其扎实的理论与技术素养,毅然选择这份作品来剖析,是需要极大勇气与自信的。同样,本书对读者的预期,也是很高的,不但要有扎实的基本功,更要有掌握STL的兴趣与坚韧意志。读这本书,你可以有充分的信心,学到的是超一流大师的思想和经验,所谓名门正派,高屋建瓴。其次,脉络清晰,组织顺序匠心独具。任何人打算系统阅读STL源码,所必须作出的第一个决定就是,从何处开始?我在初读此书时,一个最疑惑的地方就是候先生居然把allocator放在所有组件之前讲述。要知道,allocator这个东西,对一般的使用者完全透明,根本感觉不到其存在,以至于在名著《The C++ Standard Libaray》中,Nicolai Josuttis将这一部分放在全书最后。既然如此,又何必让这个无名小卒占据头版头条?我一开始还真是不理解。直到后来,我自己有一些扩展STL的实践,才发现,用的时候你固然可以对allocator不闻不问,但一旦要领悟STL的工作原理,或者要自己扩展STL的功能,则对于allocator的掌握几乎是第一先决条件。不了解allocator,则无论剖析也好,扩展也罢,必然处处碰壁。侯先生毫不迟疑,首先帮读者搬开这块绊脚石,理出头绪,实在是匠心独具。紧接着的第三章iterator及traits,直入STL的核心观念与关键技术,剑走中锋,直取要害,高举高打,开诚布公,直接把理解STL的钥匙交道读者手上。此章一过,读者神气完足,就可以大刀阔斧地打通STL的重重关隘。此布局只要稍有变化,读者的学习难度势必猛增。侯先生的此种安排,实在是大家手笔!此外,本书在技术上迎难而上,详略得当,完整而重点突出。了解SGI STL的读者都知道,这份作品对C++标准中的STL做了大量的扩充,增加了专用的高效allocator,用以操作巨型字符串的rope,单链表slist,以及万众企盼的hash容器等等,再加上STL本身就有很多精微之处,技术上的难点不少。此类书籍的作者,但凡稍有一丝懈怠之心,大可以冠冕堂皇地避重就轻。然而侯先生在此书中对重点难点毫不避讳,无论是标准功能还是非标准功能,只要对读者理解STL架构有益,只要有助于提高读者的技术,增长读者的视野与经验,书中必然不畏繁难,将所有技术细节原原本本和盘托出。另一方面,所谓剖析源码,其目的在于明理,解惑,提高自身水平,并不是要穷经皓首,倒背如流。因此,一旦道理讲清楚,书中就将重复与一般性的内容一笔带过,孰轻孰重,一目了然,详略十分得当,这一点对于提高读者的学习效率,有着巨大的意义。最后一点,本书通过大量生动范例和插图讲解基本思想,在同类书籍中堪称典范。虽然我把这一点放在最后,但我相信大部分读者站在书店,随手翻过这本书,得到的第一印象便是这一点。STL之所以为大家所津津乐道,除了其思想深刻之外,最大的因素是它实用。它所包装的,是算法与数据结构的基本功能。作为一个程序员,如果你是做数据库编程的,大可以不懂汇编语言,如果你是写驱动程序的,大可以不必通晓人工智能,写编译器的可以不用懂什么计算机图形学,操作系统内核高手的不用精通网站架设,然而,如果你不懂数据结构与算法的基础知识,不具备数据结构与算法的基本技能,那就完全丧失称为一个程序员的资格!市面上讲述算法与数据结构的专著汗牛充栋,俯拾皆是。相比之下,本书倒并不是以此为核心目标的。但是,可曾有哪位读者看到任何一本书象本书一样,将红黑树用一张张清晰生动的图解释得如此浅显易懂?所谓一图胜千言,在教授基本数据结构与算法方面,我想不出还有任何一种方法,能够比幻灯般的图片更生动更令人印象深刻了。读过此书的每一位读者,我想都会为书中那一副副插图所打动,作者细致严谨的作风,时刻为读者考虑的敬业精神,也许是更值得我们尊敬的东西。 -
面向对象程序设计实践与提高周晓聪,李文军,李师贤编著本书在编者已经编写的《面向对象程序设计基础》一书所讲述内容的基础上,进一步介绍面向对象程序设计的有关内容,书中提供了《面向对象程序设计基础》中习题的解题思路、参考答案与解题分析,并讨论了与程序设计语言编译有关的内容,如程序设计语言的类型系统、程序的存储组织与管理等,以及与面向对象软件开发有关的内容,如函数的设计、类的设计、软件开发过程和软件开发方法等。本书的特点是注重从更深、更广的层次上拓展读者对程序设计语言的认识,通过大量的程序实例剖析面向对象程序设计的基本思想。本书可作为程序设计课程的辅助教材,也可供从事软件开发的工程技术人员学习参考。 -
Windows环境下的设备驱动程序设计张惠娟等编著本书讲述了Windows系统下设备驱动程序的开发方法。全书分为三部分,共10章。第一部分主要介绍了VxD驱动程序,以及利用VToolsD开发VxD程序的方法;第二部分和第三部分分别介绍了WindowsNT和Windows2000下的设备驱动程序基础知识,以及利用DriverWorks开发NT式和WDM驱动程序的方法。本书系统介绍了在不同的操作系统下设备驱动程序开发的方法,内容实用,是一本很好的学习设备驱动程序设计的书籍。本书适合于任何想学习Windows系统下设备驱动程序开发的人员,尤其适合于初步涉及设部区动程序开发的人员。 -
Kylix开发人员指南(美)Charles Calvert等著;王文龙,刘湘宁译Kylix是业界享有盛誉的工具软件开发公司Borland推出的Linux环境下的开发工具,是将Delphi移植到Linux环境的结果,它包含了Delphi for Windows的大部分功能。本书旨在让经验丰富的程序员快速地了解并掌握Kylix,从而降低开发Linux应用程序难度,并提高开发速度。全书分五部分,共21章。第一部分简要地介绍了Object Pascal和Kylix IDE,为读者使用Kylix进行开发工作打好了基础,其中包括Pascal的基本语法、循环、分支、操作符和递归、对象和接口以及Kylix的可视化开发工具、代码编辑工具和调试工具;第二部分介绍了CLX,包括CLX的体系结构、代码共享和重用、创建组件以及绘制图形等内容;第三部分介绍了Linux系统编程,包括控制台应用程序、内存管理、文件I/O以及进程和线程等;第四部分介绍了数据库开发,包括DataCLX、数据-感知组件、数据访问层、数据库优化等内容;第五部分介绍了Web开发,包括Apache Web服务器应用程序和Web服务器开发等内容。本书以简单易懂的方式全面阐述了Kylix中所有主要的开发技术,并通过范例程序提供了大量的代码,可供中高级程序员学习使用Kylix进行Linux应用程序开发时参考。 -
Windows环境下的多线程编程原理与应用王险峰,刘宝宏编著多线程编程是程序设计技术中的一个很重要的领域,目前多数主流的操作系统都支持多任务操作。多线程是进行大型复杂软件系统开发的一把利器,是否掌握多线程编程是初学者和程序设计高手的重要区别之一。本书共分9章:第1章介绍多线程的概念和与Windows操作系统一些有关的知识;第2章介绍面向对象和C++语言的一些知识;第3章介绍线程创建的各种方法,包括利用Win32 API创建、利用运行时库函数创建和利用MFC中的全局函数创建,同时比较了不同创建方法的异同;第4章介绍了线程之间进行通信的方法,包括参数传递法、全局变量法、消息响应法以及线程同步法;第5章至第8章,每章介绍一种线程之间同步的方法,即互斥量、临界段、事件、信号量,对于每种方法都从Win32 API和MFC的同步类两方面进行介绍;第9章介绍与多线程有关的其他一些论题,包括多线程的替代方法、各种同步方法之间的异同、同步方法的选择、主动对象以及多线程的使用原则等。本书对多线程技术进行了全面系统的介绍,讨论了许多高级论题,每个论题既介绍Win32 API又介绍相应的MFC类。本书有丰富的实例供读者分析思考和模仿。实例既有基本的概性演示实例,也有说明函数用法和某种方法使用的实例,还有综合性的与实际工程应用十分接近的实例。本书适合于有一定编程基础而想尽快提高自己编程技能的广大程序设计人员学习。 -
Lotus Domino R5开发教程林昱,钱昆等编著本书深入浅出地讲解了Lotus Domino R5在Internet和Intranet上的应用,全面介绍了在进行Lotus Domino R5开发时用到的开发方式和开发手段,通过本书的学习能使读者全面掌握基于Lotus Domino R5的应用开发技术。全书共有15章,分别介绍了Lotus Domino R5入门知识、Lotus Domino Designer、Domino基本设计元素、表单设计、视图、文件夹与导航器、新增的设计元素、代理设计、Lotus Domino安全性设计、搜索设计、Notes基本编程、Domino企业数据连接服务、其他数据库连接、工作流设计和Weh应用开发。本书适合Domino开发人员。
