感觉:从之前觉得面向对象的OOP设计方式心有余悸到目前的有所期待,全仰仗与这本书的一个游戏的实践,确实做得很有感觉,如果初学者用单纯的函数去实现这样的效果感觉不可思议,但是做完这个游戏之后觉得页面运行的效果还是有待欠缺,屏幕的刷新速度与程序运行速度息息相关,需要进一步的优化才能更理想些。
跟着敲完了整个飞船打外星人的代码结构如下:
1 Pygame 2 ├── alien_invasion.py #主运行程序,负责主流程 3 ├── alien.py #外星人相关的属性和初始化信息 4 ├── bullet.py #子弹相关的属性和初始化信息 5 ├── button.py #按钮相关的属性和初始化信息 6 ├── game_functions.py #程序运行的所有函数相关信息 7 ├── game_stats.py #程序运行中的一些统计信息 8 ├── images #图片资源目录 9 │ ├── Alien.bmp #外星人图片 10 │ └── ship.bmp #飞船图片 11 ├── scoreboard.py #得分相关的属性和初始化信息 12 ├── settings.py #程序运行的设置信息 13 ├── ship.py #飞船相关的属性和初始化信息