Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 寻找一些好的面试问题_C# - Fatal编程技术网

C# 寻找一些好的面试问题

C# 寻找一些好的面试问题,c#,C#,我不想问候选人,而是给他们几个需要解决的问题。这是因为我看到人们在理论方面非常优秀,但当面对现实世界的c#问题时,他们就是无法解决 这些c#问题应该足够简单,不需要超过1-20分钟就能解决,但足够复杂,我可以剔除那些不会编码的候选者 现在,我通常要求申请者反转字符串并从列表中删除重复项。仅此一项就淘汰了一大批人 还有其他的例子吗 编辑:我应该提到这是一个标准的c#gig,他们将编写业务代码,而不是寻找实现链表的最佳方式 不要要求了解类库或模糊的语言角落(不安全、动态等);聪明的人可以捡起或查找它

我不想问候选人,而是给他们几个需要解决的问题。这是因为我看到人们在理论方面非常优秀,但当面对现实世界的c#问题时,他们就是无法解决

这些c#问题应该足够简单,不需要超过1-20分钟就能解决,但足够复杂,我可以剔除那些不会编码的候选者

现在,我通常要求申请者反转字符串并从列表中删除重复项。仅此一项就淘汰了一大批人

还有其他的例子吗

编辑:我应该提到这是一个标准的c#gig,他们将编写业务代码,而不是寻找实现链表的最佳方式

不要要求了解类库或模糊的语言角落(不安全、动态等);聪明的人可以捡起或查找它们


我会要求设计一个类层次结构来表示现实世界中的东西(车辆、动物等等)。这通常会清除那些没有对象的人。让他们也用接口来做。也让他们倒转一个字符串-老掉牙没什么坏处,但黄金是

我被问到的一个问题,后来又问了受访者,就是“描述一下你将如何把这个手机变成一个应用程序”。让他们描述类、它们的属性、方法、接口等,然后询问他们为什么选择以这种特定的方式实现它们。如果他们了解如何编写代码,这会给您一个好主意,并让您了解他们如何处理和解决问题。
此外,如果你建议他们如何以不同的方式实现它,它可能会告诉你他们是否愿意接受新的想法、批评,或者他们是否是团队成员。

向他们展示你自己项目中的一小部分代码或架构图,并请他们建议如何重构它。即使你最终没有雇佣他们,你可能会得到一些关于改进代码的有趣建议

我喜欢挑选一些我在某个时候必须解决的简单问题;没有比这更与工作相关的了

当我使用VBScript时,我会问大学考生如何编写DateDiff的简化版本,因为这样做是我在微软工作的第一天。更高级的候选者,我会问如何构建一个跟踪32位句柄和相关64位指针之间关系的设备,这也是我在使用VBScript时必须要做的

最近,我倾向于询问有关树操作算法的问题,因为编译器都是关于树操作的。或者关于如何使用monad编码生成新的操作符,因为LINQ就是这样工作的


我的观点并不是说你应该在这些方面使用问题,我的观点是你肯定在日常工作中遇到了必须解决的问题。向应聘者询问这些问题——然后你将了解他们如何解决现实问题,他们将了解如果他们来与你一起工作,他们将解决什么样的问题。

某种温和的算法

  • 编写一个方法,如果字符串是回文,则返回true,否则返回false
  • 重新实现String.Substring(int,int)方法
  • 还有一些关于面向对象的设计

  • 设计一个跳棋游戏(即定义类和一些方法)

  • 我同意你的看法,令人惊讶的是,有那么多人声称自己很有经验,而你却发现他们所做的一切都是在读方框

    我不知道C#的测试是否像最初看起来那样有价值……当然你可以让他们描述一个例子,说明什么时候需要使用继承,或者为什么强制转换可能会有性能问题,等等。但是这些都很容易学习。你会惊讶地发现,有多少受访者在给出真实世界中的继承示例时使用了“汽车”或“颜色”作为示例…。我猜它们在某个地方的书里

    在研究这个问题时,当我将发展经验与学习西班牙语进行比较时,这对我很有帮助。在课堂上很短的时间内,每个人都在变动词,并且可以通过这方面的测试……但是还没有人会说西班牙语。你想要一个自称会说西班牙语并能真正做到这一点的人

    因此,我想更具体地谈谈其他技术,这些技术将告诉我它们是否走上了老掉牙的发展道路。如果他们说他们是ASP.Net开发人员,我会问他们一些简单的问题,但这些问题都是正在进行中的

    示例:请给我一个连接字符串所在位置的示例?如果您需要将ID从一个页面传递到另一个页面,您有哪些选项?如果加载一个页面需要5分钟,请告诉我您将如何对其进行故障排除。如果我有一个网页上只有一个按钮,我如何将该按钮居中?告诉我将变量存储在viewstate和会话状态之间的区别

    你不必知道所有的事情,但是80%的面试高级职位的人会得到10%的正确答案。(在70%的电话采访中,你会听到他们在谷歌上搜索答案——幸好这些问题不是你可以轻松搜索到的。)

    SQLServer也差不多。他们说,在SQL Server开发中,他们会给自己打分为8或9,但随后会得到10%的问题。问题再次是看你是否已经走上了老路

    示例:如果您有一张客户表和一张订单表,您如何找到没有订单的客户?什么是聚集索引?如果我有一个开发人员表和一个项目表,我将如何设置它,以便项目上可以有多个开发人员,并且开发人员可以在多个项目上

    如何在SQL Server中为“y”进行开发