出版说明
“聪明的人使用Delphi,真正的程序员使用C++。”
时至今日,这句曾经在业内广为流行的话语又增添了更丰富的内涵。
脚本语言、Java、.NET等正在争夺更大的天地。
然而,C/C++仍不失为最好、最纯粹的编程语言。
— “C/C++开发专家”引导你成为真正的程序员
C/C++的发展
作为一种结构化的中高级编程语言,C语言具有功能齐全、适用范围广的优势,一直为很多程序员所钟爱,并被视为最佳的编程入门语言,拥有着庞大的使用和学习人群。C++是在C语言基础上开发的一种集面向对象编程、通用编程和传统的过程化编程于一体的编程语言,是目前业界广泛使用的一种编程语言。然而,软件产业的规模和环境发展到今天,已经发生了深刻的变化。如今企业级应用整合与开发的任务主要由Java、基于.NET平台的C#及各种新型动态语言来承担。C++的应用场合有所收缩,不再像之前那样从上到下包打天下,呈现出鲜明的行业应用特色。未来C++主要在系统级复杂应用程序,高性能、实时中间件和嵌入式领域发挥所长。随着多核CPU的普及和网络安全重要性的空前提升,在并发程序设计、系统安全及视频处理、嵌入式开发方面,C++将获得新的应用空间。在大规模、高性能计算,游戏开发、嵌入式实时应用开发方面,以及一些传统的客户端软件和构件开发中,C++也将继续保持其稳定的地位。
C/C++的图书现状
C++的教学和使用具有其复杂性,而传统图书和学习方法的各种弊端更加剧了这一现象,使C++成为不少人望而生畏的难学、难用的“专家语言”。虽然国内的C/C++图书并不缺乏,但大多只适合有一定经验的程序员提升功力之用,而内容全面准确、讲解循序渐进、学习简明易懂的原创图书并不多见。近期C/C++图书市场存在如下特点:
1. 国外经典图书全面翻新。近年来国外一些书商根据C++所发生的变化,不断地进行版本升级或全面改写书稿,推出新的力作。
2. 国内原创图书缺乏力作。近年来国内虽然有一批令人耳目一新的C++好书面世,但在技术层面上对实践的关注略显不足,难解读者之渴。
3. 关键性图书存在空白。基于组件的软件开发、复杂网络应用,以及热度尚在的COM开发等方面的图书有待开发。
基于上述现状,我们组织C/C++各应用领域的作者,推出本丛书“C/C++开发专家”,力求从新的、实用的、全面的角度介绍C/C++,使其紧密地跟踪当前国内最实用、最热门的编程技术。我们期望通过这套丛书,能够提高各位读者的C/C++开发水平及编程的实践能力,为我国计算机产业奉献一份微薄之力。
“C/C++开发专家”助你成为真正的程序员
“C/C++开发专家”的读者定位是:C/C++初学者,需要提升应用开发能力的程序员,具有实际开发经验的中高级程序员。对阅读本丛书的读者建议如下:
➢ 面向C/C++初学者
本丛书通俗易懂,并自成体系。丛书全面介绍C/C++及Visual C++的编程技术和实践操作。通过学习,初学者可快速地掌握涉及OOP、STL、泛型编程等标准C/C++的内容,对C/C++技术应用有更深刻的理解。
➢ 面向需要提升应用开发能力的程序员
对于那些急需提升应用开发能力的程序员来说,本丛书是再好不过的专家向导。丛书除全面介绍标准C/C++的内容外,还涉及数字图像处理、流媒体、网络通信和嵌入式开发等多个领域,可以为从事相关领域开发的程序员提供有益的帮助和参考。
➢ 面向具有实际开发经验的中高级程序员
本丛书同样适合于具有实际开发经验的中高级程序员。书中列举的大部分实例具体翔实,非常值得广大高级程序员学习和借鉴。
“C/C++开发专家”为程序员量身打造
本套丛书通过不同种类的图书来满足读者的需求。
➢ 语言入门
C/C++是一门优秀的高级语言。它绝不像一些传统图书所述是一门晦涩难懂、高深莫测的“专家语言”。本丛书的语言入门分支面向初学者,以通俗易懂的语言,介绍标准的C/C++语言知识,以及Visual C++编程技术;在保证知识体系的完整性的同时,在语言、体例上更贴近程序员的学习心理需求。
➢ 应用实践
如果脱离了具体的应用背景,任何一门计算机语言的学习都是“纸上谈兵”。如果程序员没有真正掌握面向应用的实践开发技能,那么很有可能面临来自就业的压力。本丛书的应用实践分支面向数字图像处理、流媒体、网络通信、嵌入式开发等不同的行业应用方向,介绍C/C++应用技术。目标是努力将读者培养成具有实际开发能力的从业人员。
➢ 开发详解
只让人阅读一遍的书很难说是一本好书。任何一本书在读者的眼中总会经历“厚→薄→厚”的过程。同样,C/C++语言会耐人寻味,但真正理解C/C++一般性内容需要花时间,而要做到融会贯通则更要下工夫。本丛书的开发详解分支针对C/C++语言及Visual C++中的高级特性,进行深入的剖析和讲解。C/C++程序员一旦掌握更高级的编程技巧,且对C/C++的语言内涵及开发技术有更为深入的理解,就能得心应手地运用这门语言。
➢ 技巧集锦
从大规模的并行计算到嵌入式系统开发,C/C++的应用领域非常广泛。即便是世界上最厚的一本书,也无法介绍所有的C/C++技术。针对这一特点,本丛书的技巧集锦分支对程序员经常遇到的问题进行解答和分析,并注重举一反三,启发读者思考。通过对这一话题的讨论,给正在从事或即将从事C/C++开发的程序员以最大的启迪。
“C/C++开发专家”丛书特色
本丛书具有如下特色。
➢ 由浅入深,通俗易懂
实际上,根本就不存在只面向纯粹的初学者的C/C++书籍。原因很简单:C/C++就不是初级的语言。初学者选择C/C++的时候,除了有足够的兴趣之外,还要有足够的耐心和恒心。为此,本丛书在保持完整性的同时注重语言的通俗性和知识的趣味性,避免了较为复杂的理论概念,取而代之的是常见的编程技巧和实际例子,力求由浅入深,通俗易懂,充分调动读者的阅读兴趣。
➢ 案例为主,内容生动
如果没有“案例”,C/C++的学习可能非常枯燥无趣;如果没有合适、有趣的“案例”,C/C++的学习仍会枯燥无趣。与以往的风格不同,本丛书强调编程实践,提供了大量的实例及源代码。这些案例均由作者从实际开发工作中设计的原型案例精简加工而成,形式丰富多样,具有很好的实用价值。
➢ 倡导正确的编程思想
“授之以鱼,不如授之以渔。”本丛书并非按部就班地完成知识传授,而是在介绍知识的同时倡导正确的学习思想和方法。如:倡导OOP思想、泛型编程、流行的设计模式、不断的重构理念和开源精神等。读者在阅读本书的同时,会接触到这些新的理念和方法。在某些开放性话题上,本丛书一反以往一些图书的“专家”面孔,更加贴近读者,从各个角度与读者展开交流和探讨。
飞思科技产品研发中心