日韩精品 中文字幕 动漫,91亚洲午夜一区,在线不卡日本v一区v二区丶,久久九九国产精品自在现拍

注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡軟件與程序設計Python面向對象編程:構建游戲和GUI

Python面向對象編程:構建游戲和GUI

Python面向對象編程:構建游戲和GUI

定 價:¥99.80

作 者: [美]艾維·卡爾布(Irv Kalb)
出版社: 人民郵電出版社
叢編項:
標 簽: 暫缺

購買這本書可以去


ISBN: 9787115602312 出版時間: 2023-03-01 包裝: 平裝-膠訂
開本: 128開 頁數(shù): 字數(shù):  

內(nèi)容簡介

  本書首先介紹構建類和創(chuàng)建對象的基礎知識,并結合代碼講述如何將理論付諸實踐;然后討論面向對象編程的關鍵概念——封裝、多態(tài)性和繼承,包括如何使用對象管理器創(chuàng)建并管理多個對象,如何通過封裝對客戶端代碼隱藏對象的內(nèi)部細節(jié),如何使用多態(tài)性定義一個接口并在多個類中實現(xiàn)它,如何應用繼承構建現(xiàn)有代碼;后講述如何構建一款帶完整的動畫和聲音的視頻游戲,從而將所有內(nèi)容整合在一起。本書涵蓋了兩個功能齊全的Python代碼包,它們將加速Python中圖形用戶界面程序的開發(fā)。本書不僅適合Python開發(fā)人員閱讀,還適合計算機相關專業(yè)的師生閱讀。

作者簡介

  Irv Kalb是加州大學圣克魯斯硅谷分校和硅谷大學的客座教授,負責“Python入門”與“Python面向對象編程”課程的教學。Irv擁有計算機科學的學士和碩士學位,使用多種計算機語言進行面向對象編程已超過30年,并且到現(xiàn)在已經(jīng)有超過10年的教學經(jīng)驗。他有幾十年的軟件開發(fā)經(jīng)驗,主要關注教育軟件的開發(fā)。在Furry Pants Productions公司,他和妻子以Darby the Dalmatian這個角色為原型,制作并發(fā)布了兩張寓教于樂的CD-ROM。Irv還撰寫了Learn to Program with Python 3: A Step-by-step Guide to Programming(Apress)一書。Irv深入?yún)⑴c了極限飛盤(Ultimate Frisbee)這項運動的早期開發(fā)。他主持編寫了多個版本的官方規(guī)則手冊,并與人合著了關于這項運動的圖書—— Ultimate: Fundamentals of the Sport。

圖書目錄

目 錄
第 一部分 面向對象編程入門
第 1章 過程式Python示例2
1.1 Higher or Lower紙牌游戲2
1.1.1 表示數(shù)據(jù)2
1.1.2 實現(xiàn)3
1.1.3 可重用的代碼5
1.2 銀行賬戶模擬5
1.2.1 分析必要的操作和數(shù)據(jù)5
1.2.2 實現(xiàn)1:不使用函數(shù)的單個賬戶6
1.2.3 實現(xiàn)2:使用函數(shù)的單個賬戶7
1.2.4 實現(xiàn)3:兩個賬戶9
1.2.5 實現(xiàn)4:使用列表的多個賬戶10
1.2.6 實現(xiàn)5:賬戶字典的列表13
1.3 過程式實現(xiàn)的常見問題15
1.4 面向對象解決方案:初識類15
1.5 小結16
第 2章 通過面向對象編程模擬物體17
2.1 構建物體的軟件模型17
2.2 類和對象簡介18
2.3 類、對象和實例化19
2.3.1 在Python中編寫類20
2.3.2 作用域和實例變量21
2.3.3 函數(shù)和方法的區(qū)別22
2.3.4 從類創(chuàng)建對象22
2.3.5 調(diào)用對象的方法23
2.3.6 從相同類創(chuàng)建多個實例24
2.3.7 Python數(shù)據(jù)類型被實現(xiàn)為類25
2.3.8 對象的定義26
2.4 創(chuàng)建一個更加復雜的類26
2.5 將一個更加復雜的物理對象表示為類28
2.5.1 向方法傳遞實參32
2.5.2 多個實例33
2.5.3 初始化參數(shù)34
2.6 類的使用35
2.7 以OOP作為解決方案35
2.8 小結36
第3章 對象的思維模型和 “self”的意義37
3.1 重看DimmerSwitch類37
3.2 1號高級思維模型38
3.3 2號深層模型39
3.4 self的含義41
3.5 小結43
第4章 管理多個對象44
4.1 銀行賬戶類44
4.2 導入類的代碼46
4.3 創(chuàng)建一些測試代碼47
4.3.1 創(chuàng)建多個賬戶47
4.3.2 在列表中包含多個Account對象49
4.3.3 具有標識符的多個對象51
4.3.4 創(chuàng)建一個交互式菜單53
4.4 創(chuàng)建對象管理器54
4.4.1 創(chuàng)建對象管理器56
4.4.2 創(chuàng)建對象管理器的主代碼58
4.5 使用異常更好地處理錯誤59
4.5.1 try和except60
4.5.2 raise語句和自定義異常60
4.6 在Bank程序中使用異常61
4.6.1 使用異常的Account類61
4.6.2 優(yōu)化后的Bank類63
4.6.3 處理異常的主代碼64
4.7 在對象列表上調(diào)用相同的方法65
4.8 接口與實現(xiàn)67
4.9 小結67
第二部分 使用pygame創(chuàng)建圖形
用戶界面
第5章 pygame簡介70
5.1 安裝pygame70
5.2 窗口71
5.2.1 窗口坐標系統(tǒng)71
5.2.2 像素顏色74
5.3 事件驅動的程序75
5.4 使用pygame76
5.4.1 打開一個空白窗口76
5.4.2 繪制圖片79
5.4.3 檢測鼠標單擊81
5.4.4 處理鍵盤操作83
5.4.5 創(chuàng)建基于位置的動畫86
5.4.6 使用pygame矩形88
5.5 播放聲音90
5.5.1 播放音效90
5.5.2 播放背景音樂91
5.6 繪制形狀92
5.7 小結95
第6章 面向對象的pygame96
6.1 使用OOP pygame創(chuàng)建屏保球96
6.1.1 創(chuàng)建Ball類96
6.1.2 使用Ball類98
6.1.3 創(chuàng)建多個Ball對象99
6.1.4 創(chuàng)建大量Ball對象100
6.2 構建可重用的、面向對象的按鈕101
6.2.1 構建一個Button類101
6.2.2 使用SimpleButton的主代碼103
6.2.3 創(chuàng)建包含多個按鈕的程序104
6.3 構建可重用的、面向對象的文本顯示105
6.3.1 顯示文本的步驟105
6.3.2 創(chuàng)建SimpleText類106
6.4 包含SimpleText和SimpleButton的彈球示例107
6.5 對比接口與實現(xiàn)109
6.6 回調(diào)函數(shù)109
6.6.1 創(chuàng)建回調(diào)函數(shù)110
6.6.2 對SimpleButton使用回調(diào)函數(shù)110
6.7 小結112
第7章 pygame GUI小部件113
7.1 向函數(shù)或方法傳遞實參113
7.1.1 位置和關鍵字形參114
7.1.2 關于關鍵字形參的一些說明115
7.1.3 使用None作為默認值115
7.1.4 選擇關鍵字和默認值116
7.1.5 GUI小部件中的默認值117
7.2 pygwidgets包117
7.2.1 設置117
7.2.2 總體設計方法118
7.2.3 添加圖片119
7.2.4 添加按鈕、復選框和單選按鈕119
7.2.5 文本輸出和輸入122
7.2.6 其他pygwidgets類124
7.2.7 pygwidgets示例程序124
7.3 一致的API的重要性125
7.4 小結125
第三部分 封裝、多態(tài)性和繼承
第8章 封裝128
8.1 函數(shù)的封裝128
8.2 對象的封裝129
8.3 封裝的含義129
8.3.1 直接訪問方式以及為什么應該避免使用這種方式130
8.3.2 嚴格解釋getter和setter133
8.3.3 安全的直接訪問135
8.4 使實例變量更加私密135
8.4.1 隱式私有135
8.4.2 更加顯式地私有135
8.5 裝飾器和@屬性136
8.6 pygwidgets類中的封裝139
8.7 一個真實的故事140
8.8 抽象141
8.9 小結143
第9章 多態(tài)性144
9.1 向現(xiàn)實世界的對象發(fā)送消息144
9.2 編程中應用多態(tài)性的經(jīng)典示例145
9.3 使用pygame形狀的示例146
9.3.1 Square類146
9.3.2 Circle類和Triangle類147
9.3.3 創(chuàng)建形狀的主程序149
9.3.4 擴展模式151
9.4 pygwidgets表現(xiàn)出多態(tài)性151
9.5 運算符的多態(tài)性152
9.5.1 魔術方法153
9.5.2 比較運算符的魔術方法153
9.5.3 包含魔術方法的Rectangle類154
9.5.4 使用魔術方法的主程序156
9.5.5 數(shù)學運算符的魔術方法158
9.5.6 向量示例158
9.6 創(chuàng)建對象中值的字符串表示160
9.7 包含魔術方法的Fraction類162
9.8 小結165
第 10章 繼承166
10.1 面向對象編程中的繼承166
10.2 實現(xiàn)繼承167
10.3 Employee和Manager示例168
10.3.1 基類Employee168
10.3.2 子類Manager168
10.3.3 測試代碼170
10.4 客戶端眼中的子類171
10.5 現(xiàn)實世界的繼承示例172
10.5.1 InputNumber172
10.5.2 DisplayMoney174
10.5.3 示例用法176
10.6 從同一個基類繼承多個類179
10.7 抽象類和抽象方法182
10.8 pygwidgets如何使用繼承185
10.9 類的層次186
10.10 使用繼承編程的困難187
10.11 小結188
第 11章 管理對象使用的內(nèi)存189
11.1 對象的生存期189
11.1.1 引用計數(shù)189
11.1.2 垃圾回收194
11.2 類變量194
11.2.1 類變量常量194
11.2.2 將類變量用于計數(shù)195
11.3 綜合運用:氣球示例程序196
11.3.1 常量模塊197
11.3.2 主程序代碼198
11.3.3 氣球管理器200
11.3.4 Balloon類和對象202
11.4 使用slots管理內(nèi)存204
11.5 小結206
第四部分 在游戲開發(fā)中使用OOP
第 12章 紙牌游戲208
12.1 Card類208
12.2 Deck類210
12.3 Higher or Lower游戲212
12.3.1 主程序212
12.3.2 Game對象213
12.4 使用__name__進行測試216
12.5 其他紙牌游戲217
12.5.1 Blackjack牌堆217
12.5.2 使用非標準牌堆的游戲217
12.6 小結218
第 13章 定時器219
13.1 定時器演示程序219
13.2 實現(xiàn)定時器的3種方法220
13.2.1 統(tǒng)計幀數(shù)220
13.2.2 定時器事件221
13.2.3 通過計算經(jīng)過的時間來創(chuàng)建定時器222
13.3 安裝pyghelpers223
13.4 Timer類224
13.5 顯示時間226
13.5.1 CountUpTimer226
13.5.2 CountDownTimer228
13.6 小結229
第 14章 動畫230
14.1 構建動畫類230
14.1.1 SimpleAnimation類230
14.1.2 SimpleSpriteSheetAnimation類234
14.1.3 將兩個類合并起來237
14.2 pygwidgets中的動畫類237
14.2.1 Animation類238
14.2.2 SpriteSheetAnimation類239
14.2.3 公共基類PygAnimation240
14.2.4 示例動畫程序240
14.3 小結241
第 15章 場景242
15.1 狀態(tài)機方法242
15.2 狀態(tài)機的一個pygame示例244
15.3 用于管理許多場景的場景管理器248
15.4 使用場景管理器的一個示例程序249
15.4.1 主程序250
15.4.2 構建場景252
15.4.3 一個典型場景254
15.5 使用場景的Rock,Paper,Scissors255
15.6 場景之間的通信259
15.6.1 從目標場景請求信息259
15.6.2 向目標場景發(fā)送信息260
15.6.3 向所有場景發(fā)送信息260
15.6.4 測試場景之間的通信260
15.7 場景管理器的實現(xiàn)261
15.7.1 run()方法262
15.7.2 主方法263
15.7.3 場景之間的通信264
15.8 小結265
第 16章 完整的Dodger 游戲266
16.1 模態(tài)對話框266
16.1.1 Yes No和警告對話框266
16.1.2 Answer對話框269
16.2 構建完整的Dodger游戲271
16.2.1 游戲概述271
16.2.2 實現(xiàn)272
16.2.3 擴展游戲287
16.3 小結287
第 17章 設計模式及收尾289
17.1 模型-視圖-控制器289
17.1.1 文件顯示示例289
17.1.2 統(tǒng)計顯示示例290
17.1.3 MVC模式的優(yōu)勢294
17.2 小結294

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) rgspecialties.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號