前言
这是我在2022届春招时因《Django
框架课》的项目所碰到的面试题,在此做一个汇总,也算帮助各位想要拿这个项目去参加面试的同学,如果有什么问题则直接在下方留言即可。
项目现在放在github上了,即为WebGame-Moba,如果能够点个Star,我会不胜感激。
面试题汇总
以下以表格的形式展现,标明的公司会链接到自己在LeetCode
上写的面经,如果感兴趣,也可以看看其它的面试题,相信会让你大受裨益的。
公司 | 问题 |
---|---|
一鸣科技 | 客户端 -> 服务器 -> 客户端,是如何实现低延时的,或者说这种延时是怎么被处理的如对方恰好击中目标而在我方看来却没有击中目标。 |
疯狂游戏 | 1.项目中的游戏引擎渲染效果是怎么实现的呢。2.项目中的联机,你是怎么做的呢。3.socket 和websocket 的区别。4.在匹配系统中添加客户端是多线程,执行具体逻辑的是守护线程,同时对消息队列操作难道不会产生安全问题? |
网易互娱 | 在游戏中,当我们使用Udp 去支持很高的流量场景时,但又不想出现丢包的情况,你会怎么去处理呢? |
蔚来 | 你认为这个项目有什么亮点呢。(开放性问题) |
网易有道 | 看项目中使用了Thrift ,你所使用的Thrift 的接口有哪些呢。 |
剑心互娱 | 1.介绍一下该项目。2.游戏的客户端和服务端你是怎么实现的。 |
搜狐畅游 | 1.游戏是长连接还是短链接。(websocket 长连接)2.在同步画面时,其坐标又是存放在什么地方。 |
冰川网络 | 1.如何实现的”Npc的随机移动,概率计算以定时向其它Npc或用户发射炮弹”这一功能。 2.如果玩家和Npc不能重叠,你会怎么做。 |
冰川网络 | 3.在一个游戏场景中,例如火山等游戏物体,其游戏玩家和Npc是不可到达的,而Npc在随机移动时,如何保证不可到达这些游戏物体,以及在进行多次随机时仍定位到这些游戏物体,你会怎么处理。4.在游戏中经常会用到路由算法,讲一下常见路由算法的实现原理。 |
奇安信 | 1.除了Django之外,你还了解什么框架。2.说说Django框架的优缺点。 |
Metaapp | 1.项目中的游戏引擎,你为何能将它称为游戏引擎呢。2. 有一个场景,玩家在近战时是弧形攻击,那我如何判断自己攻击到其它玩家呢。 |
tap4fun | 1.使用Thrift ,一般用作rpc框架,你却只用来做玩家匹配,是否有些大才小用。2.看你做了一个匹配系统,目前市面上的游戏匹配策略你是否有了解过呢,如MMR 、ELO 、trueskill2 等。 |
简历上的项目
项目该如何写在简历上呢,这里只以我2022届春招时写的为例,自己前前后后也修订了好几次:
项目描述:此项目是一款基于 Django 的在线对抗游戏,支持联机对战并可依据玩家段位分数进行匹配。
应用技术:Python、Django、Thrift、Js、Css。
项目功能:
- 自主研发的游戏引擎以实现游戏界面的动态渲染功能;
- 单人模式下支持 NPC 随机移动并计算概率以定时向其它 NPC 或用户发射炮弹;
- 多人模式下支持联机对战,使用
thrift
在多线程下实现的消息队列、阈值扩大、匹配策略以及匹配成功后的处理方式; - 多人模式下使用
Django
自带的websocket
通信实现对战中的同步机制如聊天功能; - 系统支持多端登录使用,既支持网页端,也支持Acapp端的使用(类似小程序),其信息也是保持同步的;
- 使用
shell
脚本对代码打包并利用代码压缩工具防止程序被破解;
项目成果:独立开发出一款竞技游戏。联机对战与匹配系统增加了游戏的竞技性、实时渲染与粒子效果粉饰了游戏的画面感、 聊天机制与被动技能也提高了游戏的互动性。
春秋招的感受
可能很多人看过这两篇文章,如果看过就直接略过。如果没有看过,可以看一看,自己可能也会感同身受,并对自己的未来做好预期,更有针对性的做好准备。
结尾
现在已经6.20了,七月初就得去入职了。而自己写的这篇文章也希望后来者能够对《Django框架课》做更多的准备,当然作为AcWing的同学大家都是很优秀的,AcWing也给予了我很多。遇到不懂的问题时,要多看源码,多做尝试并总结,这样才能把问题弄得更加透彻,回答问题也会更加游刃有余。(主要这项目也没有什么其它专栏与博客之类的)
点赞
求职C++岗位 , 这种python项目是不是效果还不如WebServer呐
对,webserver有网络, io, 事件模式, 数据结构, 设计模式等内容考察,python项目则更偏前端/客户端,对于C++来说,考察的不多,但也偶尔也会问一下,特别是游戏开发的岗位。
大佬,爱了爱了
很厉害呢大佬😍
干货点赞
楼主很棒!
谢谢分享
666
点开老哥的求职贴,太励志了!