注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计C/C++及其相关C++跨平台开发技术指南

C++跨平台开发技术指南

C++跨平台开发技术指南

定 价:¥49.00

作 者: (美)隆甘
出版社: 机械工业出版社
丛编项: C++设计新思维
标 签: VC++

购买这本书可以去


ISBN: 9787111250821 出版时间: 2009-01-01 包装: 平装
开本: 16开 页数: 318 字数:  

内容简介

  本书详细介绍C++语言的跨平台技术,包含的主要内容有:Netscape在向数百万Win-dows、Mac OS和Linux用户发布浏览器时采用的策略和过程;如何使用基于标志的API,包括POSIX和STL;如何避免隐晦的移植性陷阱,相关的如浮点数、chat。类型、数据序列化,以及C++的类型;如何建立一个有效的跨平台bug报告和跟踪系统等。本书内容详实,实例丰富。适合软件开发技术人员参考。本书是开发可移植C/C++应用程序的权威读物,它指导编写的代码可以无缝地运行在Windows、Macintosh和Linux平台上而不需要牺牲任何功能、易用性或是产品的品质。Mozilla和Netscape的资深工程师Syd Logan系统地讲解了所有和软件移植性有关的技术和管理上的挑战,包括编码、测试以及部署上的设计和考量。基于他丰富的跨平台开发经验,Logan完整地讨论了从原生API的使用到最新的可移植GUI开发策略等一系列问题。他还展示了如何避免传统跨平台开发方法里存在的问题,以及如何达到特性的对等性。 本书对正在构建新的跨平台软件,移植现有的C/C++软件,或是考虑将来为软件添加跨平台支持的每一位软件从业人员和技术经理来说,都是必不可少的资源。

作者简介

  Syd Logan,是一位工作生活在南加州的软件工程师,拥有圣地亚哥州立大学的计算机科学学士和硕士学位。Syd曾是Netscape Client Product Development(CPD)团队的一员,在Netscape 6和7的开发过程中,他同时担任了开发和管理的职务。之后,Syd留在AOL并作为AOL Instant Messenger团队的一员实现了VoIP点对点视频的特性。Syd的其他著作还包括《Developing Imaging Applications with XIELib》《Gtk+Programming in C》(Prentice Hall 1997和2001)。他的研究兴趣包括机器学习、操作系统设计、算法,以及任何与C、C++和UNIX有关的事物。

图书目录

“C++设计新思维”丛书前言
译者序

前言
引言
第1章 策略与管理
 条款1:把所有的平台都放在同样重要的位置
 条款2:使用公共的代码
  工厂模式在不同平台上的实现
  类的实现
  平台相关的ProcessesImpl类
  创建实例层次
  用CVS或SVN组织项目
  编译代码和Makefile
 条款3:要求开发人员用不同的编译器编译代码
 条款4:要求开发人员在不同的平台上编译代码
  条款5:测试所有的平台
 条款6:关注编译警告
  GNU 标志
  微软Visual C++
第2章 Build系统和Toolchain
 条款7:使用最适合平台的编译器
 条款8:尽量使用本地IDE
 条款9:在Windows上安装和使用Cygwin
 条款10:使用跨平台的Make系统Make
  在Windows上编译Makefile和源码
  Autoconf/Automake
  Imake
  在Mac OS X上安装Imake
  在Windows上安装Imake
  一个例子:使用Imake
  Imakefile文件
  完整编译的一个多文件程序
  在sitedef里重写默认值
  去除代码里的#ifdefs
  Imake中用到的文件
  编译含有子目录的项目
  Debug的编译
第3章 软件配置管理
 条款11:使用跨平台的bug报告和
  跟踪系统
  可访问性
  跟踪平台相关bug的能力
Bugzilla75
 条款12:设置Tinderbox
 条款13:用CVS或Subversion来管理
  源代码
  设置和使用CVS
 条款14:使用patch
  一个例子
  patch选项
  应对reject
  patch和跨平台开发
第4章 安装与部署94条款15:为本地安装程序提供支持
 XPInstall
 平台安装
第5章 操作系统接口和库
 条款16:使用标准API(如POSIX)
  POSIX
  支持POSIX、SVID、XPG和BSD
  在GCC里使用标准支持
  微软Runtime Library对POSIX的支持
  在Windows上使用GCC
  决定支持哪个标准
 条款17:考虑使用NSPR这样的平台
  抽象库
  为什么要开发NSPR
  NSPR基础
  线程
  NSPR的其他功能
第6章 其他可移植性主题 
 条款18: 慎用浮点数
  不要把浮点值序列化为二进制
  判断相等
 条款19:显式地注明char类型的符号
 条款20:避免序列化二进制数据
 条款21: 避免类型长度和组织带来的
  问题
  整型的长度
  NSPR里的类型
  长度和效率
  整型转换
  struct的对齐和顺序
第7章 用户界面
 条款22:从Model里把用户界面分离出来
  用Model/View把用户界面和程序逻辑
  分开
  用Publish/Subscribe在View和Model之间通讯
  小结
 条款23:开发一个跨平台用户界面的
  策略
  影响跨平台GUI开发移植性的问题
 选择GUI的策略
第8章 wxWidgets196wxWidgets概述
 许可协议
 安装wxWidgets
 一个简单的例子:Hello wxWidgets199创建应用程序的用户界面
 编译wxWidgets应用程序
 控件与事件
 容器widget
 对话框
 复合式widget
 国际化和本地化
第9章 用C++开发跨平台GUI工具包
 什么是XUL
 DHTML
 HTML
 脚本语言
 文档对象模型
 样式系统
 XUL
 窗口和对话框
 box元素
 工具条 
 菜单
 控件
 其他widget
 用XUL编程
 用JavaScript为UI添加逻辑
 用XPCOM和XPConnect接口化JavaScript和C/C++
 Trixul
 Trixul支持的widget
 Trixul的基本操作
 widget
 类的实现
 创建widget实现的对象
 widget工厂
 应用程序主循环
 Trixul创建用户界面的步骤
 文档、元素和DOM288
 创建widget
 布局
 滚动窗口和布局
 和JavaScript集成
 和C++组件集成

本目录推荐