ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

你敢信,清华毕业生用了一个坦克大战项目就讲完了23种设计模式

2022-03-21 20:30:58  阅读:172  来源: 互联网

标签:坦克 23 我方 子弹 讲完 设计模式 敌方


坦克大战

一、需求分析

坦克大战中有我方坦克和敌方坦克,我方坦克有一个,敌方坦克有多个。坦克可以移动,也可以发射子弹。我方坦克可以通过上下左右键来控制方向,敌方坦克自动改变方向。在游戏窗体中有障碍物,包括砖墙、钢墙、水墙和草地。坦克可以穿过草地,在遇到其他障碍物时,我方坦克停止移动,并通过操纵改变方向再移动,敌方坦克遇到其他障碍物时可以自动的改变方向。我方坦克有三次生命值,当与敌方坦克或敌方子弹相撞时,生命值减- -, 当生命值是零时,敌方胜利,游戏结束。敌方坦克的生命值为-一,当敌方坦克与我方坦克或者我方子弹相遇就消失,同时我方子弹也消失,并产生爆炸。当我方坦克把敌方坦克消灭完后,我方胜利,游戏结束。敌方子弹或我方子弹击中老巢,游戏结束。

二、程序设计

采用面向对象的设计方法,项目中有以下类:

主窗体: GameForm, 游戏的主窗体。

坦克:父类坦克(Tank)、 我方坦克(MyTank)、 敌方坦克( EnemyTank)。

墙:父类墙(Wall)、砖墙(BrickWall)、刚墙( SteelWall)、水墙( WaterWall)、

草地(MeadoeWall)。

子弹:父类子弹(Bullet)、 我方子弹(MyBullet)、敌方坦克(EnemyBullet)。

老巢: Home

火花: Spark, 子弹与墙碰撞产生火花。

爆炸: Blast, 子弹与坦克和老巢碰撞产生爆炸。

坦克大战项目目录:

视频教程:

23种设计模式

目录 创建型 

1. Factory Method(工厂方法)

 2. Abstract Factory(抽象工厂)

 3. Builder(建造者)

 4. Prototype(原型)

 5. Singleton(单例) 结构型 

6. Adapter Class/Object(适配器)

 7. Bridge(桥接) 

8. Composite(组合) 

9. Decorator(装饰) 

10. Facade(外观) 

11. Flyweight(享元)

 12. Proxy(代理) 行为型 

13. Interpreter(解释器) 

14. Template Method(模板方法) 

15. Chain of Responsibility(责任链)

 16. Command(命令)

 17. Iterator(迭代器) 

18. Mediator(中介者)

 19. Memento(备忘录)

 20. Observer(观察者)

 21. State(状态)

 22. Strategy(策略) 

23. Visitor(访问者)

下面的是23种设计模式的文档和视频,需要的小伙伴私信【学习】即可获取资料!

在Java开发中,坦克大战项目和23种设计模式无疑是经典中的经典,就算是开发5年甚至是10年以上的开发者,都不敢说自己真真实实掌握了23种设计模式,希望大家能够好好学习,并且能够掌握这些细节性的东西。

标签:坦克,23,我方,子弹,讲完,设计模式,敌方
来源: https://blog.csdn.net/wdjnb/article/details/123634176

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有