• 讀書網|DuShu.com - 讀書·學習·生活
  •  | 簡體版
  • 論壇
  • 暢銷
  • 連載
  • 圖書
  • 資訊
  • 首頁
  • 國學/古籍 | 文學藝術 | 人文社科 | 經濟管理 | 生活時尚 | 科學技術 | 教材教輔 | 少兒讀物
  •    
  • 圖書搜索:
  •  
     全部圖書 可讀圖書 可購圖書
     
  • 跨平臺軟件開發—C & C++ - 書籍詳細信息
  • 【作 者】:Brian
  • 【叢編項】:
  • 【裝幀項】:平裝 16 / 198
  • 【出版項】:清華大學出版社 / 2006年1月
  • 【ISBN號】:9787302139072 / 7302139075
  • 【原書定價】:¥29.80 有5家書店打折銷售 
  • 【主題詞】:計算機-程序設計-C/C++/C#-C++
  • 【圖書簡介】
      本書主要內容:(1)如何在開始新項目時就避免常見的可移植性錯誤,以便在進行移植時能夠節省時間; (2)如何重構無法移植的現有代碼,使之能夠很容易地移植到新的平臺上; (3)如何發現由特定平臺行為所屏蔽的Bug。 如果軟件不與某一具體平臺捆綁在一起,程序員就可以極大地擴展其產品的目標市場。無論您是從頭開始設計跨平臺的軟件,還是將大量的代碼從一種平臺移植到另一種平臺上,本書中所包含的信息都將幫助您達到目標,并且使您成長為一名真正的程序員。
  • 【作者簡介】
      Brian Hook是一位專業的軟件開發人員和作者,主要在游戲和娛樂產業界工作。在id software公司、3Dfx Interactive公司和Pyrogon公司中開發跨平臺軟件的經驗,讓他能從獨特的視角來分析跨越平臺軟件的開發過程。
  • 【本書目錄】
    第1章  可移植性概念    1
    1.1  可移植性是一種考慮問題的方
    式,而不是一種狀態    1
    1.2  培養良好的可移植性編程
    習慣    2
    1.3  良好的習慣勝過故障或標準
    的具體知識    2
    1.3.1  盡早經常移植    3
    1.3.2  在不同的環境中開發    3
    1.3.3  使用不同的編譯器    4
    1.3.4  在多個平臺上進行測試    4
    1.3.5  支持多個程序庫    4
    1.4  為新項目規劃可移植性    5
    1.4.1  使可移植性變得容易    5
    1.4.2  選擇可移植性的合理水平    5
    1.4.3  不要將項目變成專有產品    7
    1.5  移植舊程序    9
    1.5.1  除非程序已經被移植,否則
    就認定該程序是不可移植的    9
    1.5.2  只做最低限度必要的改動    9
    1.5 3  規劃攻擊目標    9
    1.5.4  在修改控制程序中記錄每一件事    10
    第2章  ANSI C與C++    11
    2.1  選擇C和C++語言的理由    11
    2.1.1  C和C++提供了低級訪問    11
    2.1.2  C與C++編譯成本機代碼    12
    2.2  C與C++的術語    12
    2.3  可移植性與C/C++    13
    第3章  可移植性技術    17
    3.1  避免使用新特性    17
    3.2  處理變化的特性    18
    3.3  使用安全的串行化和反串行化    21
    3.4  綜合測試    23
    3.5  使用編譯選項    25
    3.5.1  編譯時斷言    25
    3.5.2  嚴格編譯    26
    3.6  從可移植文件中隔離平臺相關文件    26
    3.7  編寫簡單明了的代碼    27
    3.8  使用唯一的名稱    27
    3.9  實現抽象    29
    3.9.1  分派抽象    30
    3.9.2  抽象數據類型(typedef)    35
    3.9.3  使用C預處理程序    37
    3.9.4  對無法預料的事情做好準備    38
    3.9.5  傳輸與系統相關的信息    39
    3.9.6  橋接函數    41
    3.10  低級編程    42
    3.10.1  避免使用自修改代碼/動態生成代碼    42
    3.10.2  保持高級后退    46
    3.10.3  關鍵字register    47
    3.10.4  外部與嵌入式asm文件    48
    第4章  編輯與源代碼控制    51
    4.1  文本文件行結束格式之間的差異    51
    4.2  可移植的文件名    53
    4.3  源控制    53
    4.3.1  源控制系統    54
    4.3.2  通過代理程序遷出    56
    4.4  構建工具    57
    4.4.1  平臺特有的構建工具    57
    4.4.2  可移植的構建工具    58
    4.5  編輯器    61
    4.6  本章小結    62
    第5章  處理器的不同之處    63
    5.1  對齊    63
    5.2  字節排序和Endianess    66
    5.2.1  Big-Endian值與Little-Endian值的比較    66
    5.2.2  標準化存儲格式    68
    5.2.3  固定的網絡字節排序    69
    5.3  帶符號整數的表示方法    70
    5.4  本地類型的大小    70
    5.5  地址空間    74
    5.6  本章小結    75
    第6章  浮點    77
    6.1  浮點的歷史    77
    6.2  標準的C與C++浮點支持    78
    6.3  浮點的問題    79
    6.3.1  不一致的評估    79
    6.3.2  浮點與聯網應用程序    80
    6.3.3  轉換    81
    6.4  定點整數數學    82
    6.5  從浮點數中析取整數位    82
    6.6  實現查詢    85
    6.7  異常結果    87
    6.7.1  特殊值    88
    6.7.2  異常    89
    6.7.3  浮點環境訪問    89
    6.8  存儲格式    90
    6.9  本章小結    91
    第7章  預處理程序    93
    7.1  預定義符號    93
    7.2  頭文件    95
    7.2.1  頭文件的路徑規范    96
    7.2.2  頭文件名    96
    7.3  配置宏    97
    7.4  條件編譯    98
    7.5  Pragma    99
    7.6  本章小結    99
    第8章  編譯器    101
    8.1  結構大小、填充和對齊    101
    8.2  內存管理的特性    104
    8.2.1  釋放的影響    104
    8.2.2  對齊的內存分配    104
    8.3  堆棧    105
    8.3.1  堆棧的大小    105
    8.3.2  alloca()的問題    106
    8.4  printf()例程    106
    8.5  類型尺寸與行為    107
    8.5.1  64位整數類型    107
    8.5.2  基本類型的尺寸    108
    8.5.3  有符號與無符號的char類型    110
    8.5.4  作用如同int的enum    111
    8.5.5  數字常量    112
    8.5.6  有符號與無符號的右移    112
    8.6  調用約定    113
    8.6.1  名稱修飾    114
    8.6.2  函數指針與回調    114
    8.6.3  可移植性    115
    8.7  返回結構    116
    8.8  Bitfield    116
    8.9  注釋    117
    8.10  本章小結    118
    第9章  用戶交互作用    119
    9.1  用戶界面的演變    119
    9.1.1  命令行    119
    9.1.2  窗口系統    120
    9.2  本機GUI與應用程序GU的比較    121
    9.3  低級圖形    121
    9.4  數字音頻    122
    9.5  輸入    123
    9.5.1  鍵盤    123
    9.5.2  鼠標    123
    9.5.3  操縱桿與游戲鍵盤    124
    9.6  跨平臺工具箱    124
    9.7  本章小結    124
    第10章  聯網    125
    10.1  網絡協議的演化    125
    10.2  編程接口    126
    10.2.1  套接字    126
    10.2.2  RPC(遠程過程調用)與RMI(遠程方法調用)    128
    10.2.3  分布式對象    129
    10.3  本章小結    129
    第11章  操作系統    131
    11.1  操作系統的演化    131
    11.2  宿主環境與獨立式環境    132
    11.3  操作系統可移植性的悖論    132
    11.4  內存    133
    11.4.1  內存限制    133
    11.4.2  內存映射    133
    11.4.3  受保護內存    134
    11.5  進程與線程    135
    11.5.1  進程控制與通信函數    135
    11.5.2  IPC(進程間通信)    135
    11.5.3  多線程技術    136
    11.6  環境變量    140
    11.7  異常處理    141
    11.7.1  C異常處理    141
    11.7.2  C++異常處理    142
    11.8  用戶數據存儲    142
    11.8.1  Microsoft Windows注冊表    143
    11.8.2  Linux用戶數據    144
    11.8.3  OS X的首選項    144
    11.9  安全與許可    145
    11.9.1  應用程序安裝    145
    11.9.2  特權目錄與數據    145
    11.9.3  低級訪問    146
    11.10  本章小結    146
    第12章  動態庫    147
    12.1  動態鏈接    147
    12.2  動態加載    148
    12.3  共享庫的問題(亦稱為DLL
    地獄)    148
    12.3.1  版本問題    148
    12.3.2  擴散    150
    12.4  Gun LGPL    150
    12.5  Windows DLL    150
    12.6  Linux的共享對象    153
    12.7  Mac OS X架構、插件捆綁    154
    12.7.1  架構    154
    12.7.2  捆綁    155
    12.7.3  插件    156
    12.8  本章小結    157
    第13章  文件系統    159
    13.1  符號鏈接、快捷方式與別名    159
    13.1.1  Windows的LNK文件    160
    13.1.2  Unix的鏈接    160
    13.2  路徑規范    160
    13.2.1  磁盤驅動器與卷說明符    161
    13.2.2  路徑分隔符與其他特殊字符    161
    13.2.3  當前目錄    161
    13.2.4  路徑長度    162
    13.2.5  區分大小寫    162
    13.3  安全性與訪問權限    162
    13.4  Macintoch的古怪行為    164
    13.5  文件屬性    164
    13.6  特殊目錄    164
    13.7  文本處理    165
    13.8  C運行時庫與可移植文件訪問    165
    13.9  本章小結    166
    第14章  可擴縮性    167
    14.1  較好的算法等于較好的可擴縮性    167
    14.2  可擴縮性的局限性    168
    14.3  本章小結    169
    第15章  可移植性與數據    171
    15.1  應用程序數據與資源文件    171
    15.1.1  二進制文件    171
    15.1.2  文本文件    171
    15.1.3  XML    173
    15.1.4  作為數據文件的腳本語言    174
    15.2  創建可移植的圖形    174
    15.3  創建可移植的音頻    175
    15.4  本章小結    175
    第16章  國際化與本地化    177
    16.1  字符串與統一代碼標準    177
    16.2  貨幣    179
    16.3  界面元素    180
    16.4  本章小結    180
    第17章  腳本語言    183
    17.1  腳本語言的一些缺點    184
    17.2  JavaScript/ECMAScript    184
    17.3  Python    185
    17.4  Lua    186
    17.5  Ruby    186
    17.6  本章小結    186
    第18章  跨平臺的程序庫與工具包    187
    18.1  庫    187
    18.2  應用程序架構    188
    18.2.1  Qt    188
    18.2.2  GTK+    188
    18.2.3  FLTK    188
    18.2.4  wxWidgets    189
    18.3  本章小結    189
    附錄A  可移植開源裝置(POSH)    191
    A.1  POSH的預定義符號    191
    A.2  POSH的固定大小類型    192
    A.3  POSH的實用函數和宏    193
    附錄B  用于可移植性的規則    197
  • 【購買本書】
  • 商城名稱價格 配送信息優惠活動去看看購買

    卓越網
    ¥22.30
    送貨上門:國內308個城市
    郵寄:全球
    特快專遞:全球
    海外航空快遞
    七周年店慶,全場免費配送 去看看 訂購

    當當網
    ¥23.30 當天加急送:北京五環以內
    送貨上門:國內178個城市
    郵寄:全球
    特快專遞:全球
    特惠商品68折封頂 去看看 訂購

    蔚藍書店
    ¥23.20
    送貨上門:國內45個城市
    郵寄:全球
    特快專遞:全國600城市
    其他:海內外EMS快遞
    快錢支付,最高8元現金返還,用即送 去看看 訂購

    中國圖書網
    ¥25.30 送貨上門:全國30個城市
    郵寄、快遞:全國
    特快專遞EMS:全球
    訂單金額超過100元免費配送
    精品藏書拍賣活動
    去看看 訂購

    華儲網
    ¥23.84
    送貨上門:遼寧、長春、北京
    快遞、郵政遞送:全球
    30萬春節大禮包連環送,全場7折+滿100免運費 去看看 訂購

    中國圖書館網
    ¥0.4/頁起
    郵寄、快遞:全國
    特快專遞EMS:全球
    提供稀缺絕版圖書文獻影印服務 去看看 預定
  • 說明:
  • 1、由于網上書店可能根據各種情況隨時調整價格,我們的價格信息存在滯后性。以上價格僅作參考,具體以網上書店標示的價格為準。
    2、如價格折扣信息和原書定價存在較大誤差,可能是該店售書為本書的不同版本或不同裝禎形式,請讀者自行鑒別。
    3、對如何網上購書存在疑問,請點擊上面購書指南鏈接查詢。
  • Copyright © 讀書網 www.dushu.com 2006-2007, All Rights Reserved.
    鄂ICP備06000781號 公安備4201502577