2021校招-cocos2dx

前言

面试的岗位是cocos2dx开发实习生,这次是我第一次面试。我的基础确实很差,同时我也不知道该怎么面试,导致了这场面试的完全失败。不会说话和没有准备,加上很紧张甚至让我有项目经验这种优势也变成了劣势,真的是后悔,失去了这么好的一个机会。
记录这篇博客以勉励自己,以后应当打好基础,说话也要注意分寸。

红色标注的内容是自认为答得很烂的部分。

正文

个人介绍

面试官:简要介绍一下你自己。
我:我是xxx的软件工程在读22届本科生,就如我简历上写的,我的主修语言是java c#,我也学了unity,但是学校教的过于浅显,于是我自学了一年。我对游戏行业很感兴趣,希望在游戏行业立足。

面向对象

面试官:说说面向对象的三个基本特征。
我:三个特征是封装,继承,多态。
我:封装指的是将代码中不需展示的部分隐藏起来,使得其外部不可见,被封装的对象只提供部分必须的外部操作。继承使得一个父类可以派生出多个子类,子类继承父类的方法,有利于代码复用。多态指的是同一方法在不同对象中表现出不同的执行。多个类实现同一接口,对同一方法进行不同的重写就体现了多态。

语言基础

面试官:我看你写学过c和c#,你认为两者之间存在什么区别?
我:c语言是面向过程语言,而c#是面向对象语言。c#的面向对象语言性质决定了使用的时候要遵循面向对象的原则,操作的对象是类和对象。而c语言注重于过程。c#提供了大量的封装好的数据结构,例如arraylist,list,linkedlist,hashtable。这些在c语言中都要自己实现,例如链表要用结构体实现,数组也可。

数据结构与算法

面试官:我看到你写了解常见的数据结构和算法,说说常见的数据结构。
我:常见的数据结构有:栈,队列,树
面试官:你认为栈和队列很常见,举个栈的实现。
我:(停顿)例如计算器,之前我跟着课程有实现过中缀表达式计算器,使用栈结构根据算数运算符优先级进行出栈入栈,最终得出运算结果。
面试官:那队列呢?
我:(停顿)不知道
面试官:你说这三个常用,那你认为实际环境中数组和链表没他们使用的多?
我:不是,我的意思是常见。
面试官:你怎么定义常见的?
我:(停顿)我说漏了,实际上数组和链表应用要更多。
面试官:数组和链表有什么区别?
我:数组以下标为索引,声明的时候需要指定长度,在内存上是连续的,但也可通过一些操作进行扩容,例如c语言的malloc和realloc方法。数组在查询时优于链表,但在插入删除时弱于链表。链表结构内内包含数据单元和指向下一个节点的指针,因此链表在插入删除上具有优势,只需要将节点指向下一节点即可。
面试官:数组和链表的时间复杂度是多少?
我:数组是O(1)。
面试官:链表呢?
我:(停顿)不知道。
面试官:为什么你说数组的时间复杂度是O(1)?
我:(停顿)我说错了,时间复杂度应当根据插入或查找算法来看。
面试官:举个例子。
我:不知道怎么说。
面试官:算法方面你有什么熟悉的吗?
我:深度优先和广度优先。我简历上写的c语言迷宫项目就主要用了。
面试官:说说细节。
我:主要是使用队列数据结构进行的。广度优先寻路有一个结构记录每条路径的长度,筛选得到最右路径。深度优先寻路需要设置前驱节点,并在遇到死路时候进行回溯到分岔路口。
面试官:说说回溯的例子。
我:例如递归,像归并排序就是一种体现。
面试官:说说归并排序。
我:归并排序就是把待排序内容分为多个部分,然后对多个部分执行再次细分,对每部分应用归并排序,最终再反向合并,得到结果,也体现了分治思想。

设计模式

面试官:我看到你写了解常见设计模式,说说看。
我:(停顿)实际上我这学期才学习设计模式,对设计模式仍然不是很熟悉。
面试官:举个你熟悉的例子。
我:单例模式。单例模式在不允许初始化多个对象的时候有用,我在unity中实现过单例相机。
面试官:怎么实现的。
我:你是要我说代码结构吗。
面试官:是的。
我:摄像机里设置单例对象,使得其等于新对象。一旦单例对象存在就不再能够实例化新对象。
面试官:单利对象有什么注意点吗。
我:(停顿)不知道。

开发经验

面试官:你有unity游戏开发的经验吗。
我:有,我自己和别人在一起开发一个3d游戏。
面试官:我看你简历上没写啊。
我:因为项目完成度不高,所以我没写上去。
面试官:说说这个项目里你觉得最成功的地方。
我:人物动画状态控制。
面试官:你认为这部分哪里做得好呢。
我:我利用了动画状态的进入,持续,退出的回调函数对角色控制器中的参数进行控制,达到动画控制角色移动的模式。
面试官:除了unity你有接触过其他游戏引擎吗?
我:大一的时候有用过一段时间的ue4,做了个吃豆人小游戏。
面试官:你未来是想在你目前做的方向,也就是3d发展吗。
我:就和我一开始说的一样,我追求自身能力的发展,不局限于引擎和游戏形式。

期望和学习

面试官:根据你的能力,你认为自己薪资期望是多少呢?
我:xxxx(一个低于平均价的数字)。
面试官:我说的是正式薪资,不是实习。
我:就是xxxx,我看了不少类似企业的招聘能力要求,我的计算机基础很薄弱,只能给xxxx。
面试官:你最近有在看什么书吗?
我:unity shader入门精要,还有数据结构。我对图形学方面比较感兴趣,同时为了弥补我薄弱的基础,我也在重新学习数据结构。

公司了解

面试官:你对我们公司有了解吗?
我:我看过公司的几款产品,大概知道方向。
面试官:哪几款,说说看。
我:我只是看了一下招聘网站的信息,没有详细了解过,知道公司主要业务是棋牌游戏。
面试官:对,我们主要是做棋牌的。

反问流程

面试官:你有什么想问的吗?
我:请问贵公司除了棋牌,有考虑别的发展方向吗?
面试官:我不太清楚,我这个部门是用cocos2dx和creator做棋牌的。
我:请问贵公司的发展前景怎么样?
面试官:你问的是公司还是个人?
我:个人。
面试官:这个我不好说,不同的部门和不同的项目都不一样,每个人也都有他们不同的发展。
我:没有问题了。
面试官:那么今天就聊到这里。
我:再见。

posted @ 2021-11-24 15:44  DarthCY  阅读(129)  评论(0)    收藏  举报