Windows 8應用開發權威指南 ( 簡體 字) |
作者:馮瑞濤 閆 妍 著 | 類別:1. -> 作業系統 -> Windows 2. -> 程式設計 -> 綜合 |
譯者: |
出版社:機械工業出版社 | 3dWoo書號: 35104 詢問書籍請說出此書號!【缺書】 NT售價: 595 元 |
出版日:2/1/2013 |
頁數:878 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787111411857 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:經過近一年的準備和編寫,《Windows 8應用開發權威指南》一書終于要與讀者們見面了。本書在編寫過程中經歷了從Windows 8預覽版到正式版的每一個階段,而其中每一個新版本的發布都會帶來名詞和功能上的更新,例如必應地圖、推送通知、Live SDK、遠程調試工具等都在此過程中發布了多個版本。但讀者不會在閱讀時有所察覺。因為本書中的內容已經對所發生的變化進行了持續更新。
目前與Windows 8系統當中的應用商店應用開發相關的參考資料和圖書還很少,截至本書發稿前還沒有看到國內有與Windows應用商店應用開發相關的技術書籍發布或可接受預定,而國外的一些與Windows應用商店應用開發相關的書籍也大部分是在正式版發布之前編寫的,且內容不是很豐富價格也比較貴。此外,在微軟官方網站上所提供的技術參考資料讀起來很吃力,其中還有部分代碼存在著錯誤和缺失的問題。這給想要學習Windows應用商店應用開發的學習者帶來困難的同時也給本書的編寫帶來了困難,作者一方面需要為陌生的名詞找到合適的文字解釋,另一方面為系統中所存在的缺陷尋找解決辦法。
Windows應用商店應用的開發并不是一個容易掌握的技術,但如果讀者在閱讀本書的過程中,發現所講述的內容并不難懂,甚至是簡單的,那么編寫這本書的初衷也就達到了。作者的愿望是可以通過細致平和、通俗易懂的表述方式講解每一個技術細節,并結合示例幫助讀者更好地理解它們,降低學習的時間成本和進入門檻,讓基礎并不是很好的讀者可以有信心讀完本書,并從中有所收獲。為了做到這一點,在本書當中很少能看到超過兩頁的連續代碼,因為書中的示例代碼經過重新編排已分解成多個獨立且容易理解的代碼片段,去除了冗余和復雜的代碼,并配有詳細的代碼注釋和代碼解釋。作者在編寫過程中認真思考其中的用詞,不回避技術難點。為使內容保持連貫,書中沒有采用變化多樣的編寫格式,始終以循序漸進的編排方式將每一章內容組織在一起,并讓每一章都包含亮點,而不是讓一頁接著一頁的代碼占據書中的大部分篇幅,這種編排方式也使得本書相比一般技術圖書在內容上增加了許多文字。
學習過Visual C#語言,特別是了解Silverlight、WPF、Windows Phone開發技術的讀者學習本書會很順利。對于有Windows應用商店應用開發經驗的開發者,通過參考和學習書中詳細的示例可以節省很多寶貴的開發時間。從事Web開發和C++開發的讀者,在本書中可以學習如何使用所熟悉的JavaScript和Visual C++語言開發Windows應用商店應用。對于學習Windows Phone 8應用開發的讀者,本書也是一本很好的參考資料。
在此之前作者一直想編寫一本專著于應用軟件開發并讓自己感到滿意的圖書,而本書實現了作者的這個愿望。除應用軟件開發之外,游戲軟件開發同樣占據著重要的地位,如果讀者喜愛本書,相信有一天會有一本叫做“Windows 8游戲開發權威指南”的圖書擺在書架上供讀者選購和翻閱,依然采用與本書相似的語言表達方式,講述如何為Windows應用商店開發游戲應用程序。
一本圖書的編寫離不開同事和朋友們的幫助,最后對為本書編寫提供幫助的王學東、張林、默曉飛、于志遠、趙魏、朱新向、孫震、趙廣濤和段國輝表示感謝。
作 者
2012年12月12日 北京 |
內容簡介:Windows 8的最大創新之處是基于全新的設計理念引入了“Windows應用商店應用”,彌補了傳統Windows用戶界面在觸控體驗上不夠理想的遺憾,其簡約醒目的界面風格不但使視覺效果更加絢麗,同時也呈現了大量信息,方便用戶進行信息交互。在本書中,讀者可以系統全面地了解與Windows應用商店應用開發相關的技術知識。 目前Windows應用商店應用的開發可以采用.NET(Visual C#、Visual Basic)、JavaScript、Visual C++三種技術方式實現。其中.NET技術是當下最流行的開發技術,在此之前的Silverlight、WPF和Windows Phone都對.NET開發技術提供主要支持,也就是說之前曾對.NET技術有了解的開發者可以基于原有的知識較快地轉移到Windows應用商店應用開發當中;JavaScript是Web前端開發的重要技術之一,所有從事Web應用開發的開發者都對JavaScript很了解,所以JavaScript開發技術比較適合于之前熟悉網頁設計的開發人員使用;而Visual C++這種開發技術則在DirectX編程、硬件設備編程等方面具有比較強的優勢,當然也適合于之前熟悉Visual C++開發技術的開發者選用。考慮到.NET技術使用的廣泛性和開發的高效性,本書將主要以.NET開發技術中使用最為廣泛的XAML+Visual C#技術組合進行詳細講解,在本書的末尾還會通過兩章的篇幅深入淺出地為讀者介紹Windows應用商店應用的另外兩種開發方式JavaScript和Visual C++,并結合不同語言的技術重點提供了相應的開發案例供讀者學習。 書中通過細致平和、通俗易懂的表述方式,講解了Windows應用商店應用開發的方方面面,涵蓋開發環境的搭建、開發工具的使用和應用的發布。在技術細節上,本書對Windows應用商店應用開發的相關技術做了詳細講解,且突出重點不回避難點;為了便于讀者融會貫通,本書在介紹技術知識的同時還提供了精心設計的代碼示例,讓讀者可以快速將所學知識運用到開發實踐當中;為使本書能夠被更多讀者所接受,本書摒棄了枯燥的語法講解形式,在內容上采用循序漸進的編排方式,使讀者可以流暢地從書中獲取知識。 |
目錄:前 言
第1章 初識Windows 8 / 1
1.1 Windows 8系統介紹 / 1
1.1.1 Windows 8新特性 / 1
1.1.2 Surface平板電腦 / 2
1.1.3 Windows 8與Windows Phone 8 / 3
1.1.4 Windows應用商店應用的開發特點 / 4
1.2 Windows 8 Metro風格用戶界面介紹 / 4
1.2.1 Windows 8 開始屏 / 5
1.2.2 Windows 8 Metro風格界面設計思想 / 7
1.2.3 Windows 8 Metro風格界面與傳統Windows界面比較 / 7
1.3 Windows應用商店應用新特征 / 10
1.4 Windows應用商店 / 11
1.5 Windows應用商店應用一覽 / 12
1.6 本章小結 / 14
第2章 應用開發環境 / 16
2.1 開發工具 / 16
2.1.1 Visual Studio 2012 / 16
2.1.2 Blend for Visual Studio 2012 / 18
2.2 開發環境搭建 / 19
2.2.1 Windows 8系統的安裝 / 19
2.2.2 Visual Studio 2012的安裝 / 21
2.2.3 IIS 8.0服務器安裝 / 23
2.2.4 獲取更多開發工具與擴展 / 24
2.2.5 獲取開發者授權 / 26
2.3 Visual Studio 2012使用入門 / 26
2.3.1 菜單欄 / 26
2.3.2 工具箱 / 26
2.3.3 “屬性”面板 / 27
2.3.4 解決方案資源管理器 / 27
2.3.5 設計器 / 28
2.3.6 代碼編輯器 / 29
2.3.7 “輸出”面板 / 30
2.4 開發第一個Windows應用商店應用 / 30
2.4.1 開發技術選擇 / 31
2.4.2 新建一個Windows應用商店應用 / 31
2.4.3 本地計算機調試 / 32
2.4.4 模擬器調試 / 33
2.5 配置遠程調試 / 34
2.5.1 下載并安裝遠程調試工具 / 34
2.5.2 配置遠程調試監視器 / 34
2.5.3 配置遠程調試客戶端 / 36
2.6 賬號注冊 / 37
2.6.1 將Microsoft賬戶與DreamSpark綁定 / 37
2.6.2 獲取Windows 應用商店開發者注冊碼 / 39
2.6.3 注冊Windows應用商店 / 40
2.6.4 驗證付款方式 / 42
2.7 應用程序發布 / 44
2.8 本章小結 / 52
第3章 XAML基礎 / 53
3.1 XAML的起源 / 53
3.2 XAML基礎知識 / 53
3.2.1 命名空間 / 54
3.2.2 元素定義 / 54
3.2.3 屬性設置 / 55
3.2.4 標記擴展 / 57
3.2.5 類型轉換 / 60
3.2.6 資源字典 / 60
3.2.7 依賴項屬性和添加屬性 / 64
3.2.8 事件 / 66
3.3 XAML外觀設計 / 70
3.3.1 樣式 / 70
3.3.2 模板 / 72
3.3.3 畫刷 / 75
3.3.4 動畫 / 76
3.4 本章小結 / 77
第4章 應用控件 / 78
4.1 按鈕控件 / 78
4.1.1 Button控件 / 78
4.1.2 HyperlinkButton控件 / 80
4.2 選擇控件 / 81
4.2.1 CheckBox控件 / 81
4.2.2 ComboBox控件 / 83
4.2.3 ListBox控件 / 85
4.2.4 RadioButton控件 / 86
4.2.5 Slider控件 / 88
4.2.6 ToggleSwitch控件 / 90
4.3 文本編輯控件 / 91
4.3.1 TextBox控件 / 91
4.3.2 PasswordBox控件 / 92
4.3.3 RichEditBox控件 / 95
4.4 信息顯示控件 / 96
4.4.1 TextBlock控件 / 97
4.4.2 Image控件 / 98
4.4.3 ProgressBar控件 / 99
4.4.4 ProgressRing控件 / 100
4.4.5 ToolTip控件 / 100
4.4.6 Popup控件 / 101
4.4.7 WebView控件 / 103
4.5 內容布局控件 / 105
4.5.1 ScrollViewer控件 / 105
4.5.2 SemanticZoom控件 / 106
4.5.3 ListView控件 / 108
4.6 自定義控件 / 110
4.7 擴展控件 / 114
4.7.1 擴展控件安裝 / 114
4.7.2 Telerik UI Controls for Windows 8 / 114
4.8 本章小結 / 121
第5章 界面布局與導航 / 122
5.1 界面系統 / 122
5.1.1 視圖模式 / 122
5.1.2 側邊欄 / 126
5.1.3 快捷菜單 / 130
5.1.4 提示框 / 132
5.1.5 鎖屏背景 / 135
5.2 界面布局 / 137
5.2.1 界面布局介紹 / 138
5.2.2 Canvas / 138
5.2.3 StackPanel / 140
5.2.4 Grid / 142
5.3 項目模板 / 145
5.3.1 空白項目模板 / 145
5.3.2 拆分布局項目模板 / 150
5.3.3 網格布局項目模板 / 152
5.4 頁面導航 / 153
5.4.1 頁面間導航 / 154
5.4.2 頁面間傳遞信息 / 155
5.4.3 頁面緩存 / 157
5.4.4 全局方式傳值 / 158
5.4.5 外部頁面 / 160
5.5 本章小結 / 162
第6章 數據綁定 / 163
6.1 數據綁定概述 / 163
6.2 數據綁定分類 / 164
6.2.1 單條數據綁定 / 164
6.2.2 集合對象綁定 / 170
6.2.3 分層數據綁定 / 174
6.3 數據模板 / 178
6.4 詳細視圖 / 180
6.5 數據轉換 / 182
6.6 綁定方式 / 186
6.7 綁定設計器 / 190
6.8 依賴項屬性 / 193
6.9 本章小結 / 197
第7章 推送通知 / 198
7.1 推送通知概述 / 198
7.1.1 推送通知流程 / 198
7.1.2 推送通知示例 / 206
7.1.3 WNS使用要求與規范 / 216
7.1.4 通知類型 / 217
7.2 Tile 通知 / 217
7.2.1 設計默認Tile / 218
7.2.2 發送Tile通知 / 219
7.2.3 在同一通知中指定寬形和矩形Tile更新 / 220
7.2.4 Tile通知隊列 / 222
7.2.5 清理Tile通知 / 225
7.2.6 檢查Tile通知設置 / 225
7.2.7 Tile通知模板 / 226
7.2.8 二級Tile / 237
7.3 Badge 通知 / 243
7.3.1 Badge通知模板 / 244
7.3.2 發送Badge通知 / 245
7.3.3 清理Badge通知 / 246
7.4 Toast 通知 / 246
7.4.1 啟用Toast通知功能 / 246
7.4.2 發送Toast通知 / 247
7.4.3 Toast通知模板 / 249
7.5 Raw通知 / 252
7.5.1 Raw通知簡介 / 252
7.5.2 Raw通知示例 / 253
7.6 鎖屏顯示通知 / 262
7.7 本章小結 / 263
第8章 圖形與畫刷 / 264
8.1 簡單圖形 / 264
8.1.1 線形 / 264
8.1.2 矩形 / 265
8.1.3 橢圓 / 266
8.1.4 多邊形 / 267
8.1.5 多線形 / 268
8.2 路徑 / 269
8.2.1 Path / 270
8.2.2 PathGeometry / 271
8.3 復雜幾何圖形 / 273
8.3.1 LineGeometry / 273
8.3.2 RectangleGeometry / 275
8.3.3 EllipseGeometry / 276
8.3.4 GeometryGroup / 277
8.4 輪廓樣式 / 279
8.4.1 線的兩端效果 / 279
8.4.2 圖形拐角處的效果 / 280
8.4.3 虛線樣式 / 282
8.5 畫刷 / 283
8.5.1 單色畫刷 / 284
8.5.2 線性漸變畫刷 / 285
8.5.3 圖像畫刷 / 287
8.6 本章小結 / 288
第9章 多媒體 / 289
9.1 多媒體開發概述 / 289
9.2 圖像 / 289
9.2.1 Image和ImageBrush / 289
9.2.2 Image開發示例 / 293
9.3 音頻和視頻 / 296
9.3.1 MeidaElement控件介紹 / 297
9.3.2 MediaElement控件的基本使用 / 299
9.3.3 MeidaElement控件的狀態管理 / 304
9.3.4 MeidaElement控件的常用功能 / 307
9.4 音頻與視頻處理 / 311
9.4.1 音頻和視頻媒體文件轉碼 / 312
9.4.2 剪輯音頻和視頻媒體文件 / 316
9.5 本章小結 / 317
第10章 動畫效果 / 318
10.1 控件動畫 / 318
10.2 過渡動畫 / 319
10.3 演示圖板 / 323
10.3.1 主題動畫 / 323
10.3.2 插值動畫 / 325
10.3.3 關鍵幀動畫 / 328
10.4 3D特效 / 333
10.4.1 旋轉特效 / 333
10.4.2 旋轉中心 / 336
10.4.3 偏移特效 / 337
10.5 變形特效 / 340
10.5.1 平移變形 / 340
10.5.2 旋轉變形 / 341
10.5.3 縮放變形 / 343
10.5.4 扭曲變形 / 344
10.5.5 組合變形 / 345
10.5.6 矩陣變形 / 346
10.6 緩沖動畫 / 347
10.7 本章小結 / 351
第11章 多線程與后臺任務 / 352
11.1 使用任務實現多線程 / 352
11.2 后臺傳輸 / 359
11.2.1 后臺傳輸簡介 / 359
11.2.2 下載文件 / 359
11.2.3 上傳文件 / 367
11.2.4 成本控制 / 374
11.3 后臺任務 / 374
11.3.1 后臺任務簡介 / 374
11.3.2 使用后臺任務 / 375
11.3.3 管理后臺任務 / 380
11.3.4 后臺任務的資源管理 / 382
11.3.5 實例解析 / 383
11.4 后臺音頻播放 / 389
11.4.1 音頻流類型 / 389
11.4.2 BackgroundCapableMedia音頻流 / 390
11.4.3 Communications音頻流 / 396
11.5 鎖屏應用 / 396
11.5.1 鎖屏應用簡介 / 397
11.5.2 實例解析 / 397
11.6 本章小結 / 404
第12章 傳感器 / 405
12.1 響應運動的傳感器 / 405
12.1.1 陀螺儀 / 405
12.1.2 加速計 / 410
12.1.3 側斜儀 / 414
12.2 檢測方向的傳感器 / 417
12.2.1 指南針 / 417
12.2.2 方向傳感器 / 420
12.2.3 確定設備方向 / 423
12.3 氛圍光傳感器 / 426
12.4 探測用戶位置 / 428
12.5 近場通信 / 432
12.6 本章小結 / 437
第13章 文件與數據存儲 / 438
13.1 應用程序的數據存儲 / 438
13.1.1 應用程序存儲空間 / 439
13.1.2 應用程序安裝目錄 / 442
13.1.3 應用設置存儲 / 445
13.2 用戶庫操作 / 446
13.2.1 API參考 / 447
13.2.2 用戶庫文件操作 / 448
13.2.3 用戶庫文件夾操作 / 449
13.2.4 獲取文件及文件夾列表 / 450
13.2.5 用戶庫文件分組 / 451
13.3 文件訪問方式 / 453
13.3.1 訪問應用內部文件 / 453
13.3.2 文件選取器 / 453
13.3.3 近期訪問列表 / 455
13.4 應用間文件訪問 / 456
13.5 獲取聯系人信息 / 460
13.6 SQLite數據庫簡介 / 464
13.6.1 配置SQLite數據庫 / 464
13.6.2 創建SQLite數據庫 / 465
13.6.3 數據庫的基本操作 / 469
13.7 數據的加密與解密 / 473
13.7.1 常用類、方法和屬性 / 473
13.7.2 數據操作 / 474
13.7.3 加密解密 / 477
13.8 本章小結 / 485
第14章 網絡通信 / 486
14.1 HTTP請求 / 486
14.1.1 HttpClient / 486
14.1.2 HttpWebRequest / 489
14.1.3 微軟翻譯示例 / 489
14.2 WCF數據服務 / 493
14.2.1 創建WCF服務 / 494
14.2.2 使用WCF服務 / 496
14.3 Socket通信 / 498
14.3.1 Socket入門 / 498
14.3.2 使用Socket連接 / 499
14.4 訪問網絡數據資源 / 504
14.4.1 Web訂閱簡介 / 504
14.4.2 訪問Web訂閱源 / 504
14.5 Live Connect / 509
14.5.1 Live Connect配置 / 509
14.5.2 讀取SkyDrive的相冊和照片 / 510
14.5.3 SkyDrive文件的上傳與刪除 / 516
14.6 對等連接通信 / 519
14.6.1 對等連接簡介 / 519
14.6.2 使用對等連接通信傳遞消息 / 519
14.7 本章小結 / 530
第15章 生命周期管理 / 531
15.1 Windows應用商店應用的生命周期介紹 / 531
15.1.1 狀態轉換 / 531
15.1.2 掛起事件 / 532
15.1.3 恢復事件 / 532
15.1.4 激活事件 / 532
15.2 生命周期事件處理 / 533
15.2.1 應用掛起 / 533
15.2.2 應用恢復 / 534
15.2.3 應用激活 / 534
15.3 實例解析 / 535
15.3.1 功能實現 / 535
15.3.2 管理應用生命周期 / 537
15.4 應用自啟動 / 542
15.4.1 設置默認打開程序 / 542
15.4.2 啟動系統的默認應用 / 546
15.5 本章小結 / 549
第16章 地圖應用 / 550
16.1 地理信息系統介紹 / 550
16.2 Bing Maps實例開發 / 551
16.2.1 Bing Maps SDK簡介 / 551
16.2.2 注冊Bing Maps Key / 554
16.2.3 創建Bing Maps項目 / 555
16.2.4 地圖功能應用 / 556
16.3 百度地圖實例開發 / 565
16.3.1 百度API介紹 / 565
16.3.2 注冊開發者ID / 567
16.3.3 實例解析 / 568
16.4 本章小結 / 576
第17章 外部設備 / 577
17.1 打印機 / 577
17.1.1 編輯打印內容和打印設置 / 577
17.1.2 打印預覽 / 581
17.1.3 打印 / 584
17.2 麥克風和攝像頭 / 585
17.2.1 麥克風 / 586
17.2.2 攝像頭 / 590
17.3 手寫輸入 / 597
17.3.1 手寫輸入功能 / 597
17.3.2 設置筆畫屬性 / 605
17.3.3 清除和保存功能 / 606
17.4 存儲設備的自動播放 / 608
17.4.1 自動播放事件 / 608
17.4.2 自動播放的使用 / 610
17.5 訪問移動存儲設備 / 616
17.6 設備狀態檢測 / 622
17.6.1 設備狀態檢測方法 / 622
17.6.2 枚舉設備 / 622
17.6.3 監視設備 / 628
17.7 本章小結 / 634
第18章 全球化 / 635
18.1 全球化概述 / 635
18.2 資源引用 / 635
18.2.1 在XAML元素中引用字符串資源 / 635
18.2.2 在XAML元素中引用文件資源 / 637
18.2.3 在后臺代碼中引用字符串資源 / 638
18.2.4 引用分離資源文件中的資源 / 640
18.2.5 引用類庫資源 / 641
18.3 語言設置 / 645
18.3.1 運行時響應語言變更 / 645
18.3.2 應用中設置語言選項 / 646
18.3.3 設置指定頁面的語言 / 650
18.3.4 資源匹配規則 / 652
18.4 全球化示例 / 656
18.5 多語言應用工具包 / 662
18.5.1 使用步驟 / 663
18.5.2 示例講解 / 663
18.6 本章小結 / 667
第19章 JavaScript開發Windows應用商店應用 / 668
19.1 JavaScript開發Windows應用商店應用基礎 / 668
19.1.1 JavaScript與HTML5開發的相關介紹 / 668
19.1.2 項目模板和項模板 / 673
19.1.3 項目模板中的文件和項模板文件 / 678
19.1.4 控件的添加 / 682
19.1.5 WinJS庫控件 / 685
19.1.6 小球運動示例 / 688
19.2 頁面導航 / 691
19.2.1 頁面加載 / 691
19.2.2 頁內導航 / 693
19.3 數據綁定 / 697
19.3.1 簡單對象綁定 / 697
19.3.2 模板綁定 / 699
19.4 訪問文件和文件夾 / 701
19.4.1 文件選取器 / 702
19.4.2 選取文件和文件夾 / 702
19.4.3 獲取文件和文件夾列表 / 707
19.4.4 寫入和讀取文件 / 709
19.5 動畫和圖形 / 714
19.5.1 動畫 / 714
19.5.2 圖形 / 726
19.6 多媒體 / 729
19.7 綜合實例 / 732
19.8 本章小結 / 749
第20章 Visual C++開發Windows應用商店應用 / 750
20.1 C++/CX語法擴展 / 750
20.2 計時器 / 756
20.3 數據綁定 / 759
20.4 XML文件解析 / 761
20.5 文件選取 / 766
20.6 媒體播放 / 768
20.6.1 視頻載入 / 768
20.6.2 播放控制 / 770
20.7 Direct2D編程 / 781
20.7.1 繪制幾何圖形 / 781
20.7.2 繪制圖片 / 801
20.7.3 繪制文本 / 805
20.8 Direct3D編程 / 807
20.8.1 Direct3D開發基礎 / 807
20.8.2 Direct3D項目模板介紹 / 811
20.8.3 Direct3D圖形繪制 / 820
20.9 WinRT組件 / 821
20.9.1 編寫WinRT組件 / 822
20.9.2 調用WinRT組件 / 824
20.10 本章小結 / 829
第21章 Windows應用商店應用實例開發 / 830
21.1 應用介紹 / 830
21.2 代碼實現 / 830
21.2.1 項目創建和設置 / 831
21.2.2 程序入口 / 833
21.2.3 主框架 / 835
21.2.4 查詞頁面 / 837
21.2.5 生詞本頁面 / 858
21.2.6 生詞播放頁面 / 862
21.2.7 翻譯頁面 / 870
21.2.8 動態詞典磁貼 / 876
21.3 本章小結 / 878 |
序: |