3

我是一名相当初级的程序员,我的任务是面试一位经验丰富的大型机 COBOL 程序员,以担任为 Windows Mobile 进行 C++ 开发的职位。我所说的经验丰富是指候选人的整个编程生涯都是 COBOL。

我对任何特定的语言没有偏见,只是有点担心我进行彻底采访的能力。

在面试中,没有 COBOL 经验的我如何才能很好地了解这位面试者的能力?

我应该询问或寻找任何具体的事情吗?

我已经阅读了很多关于 SO 的一般面试内容,考虑到候选人背景的性质,我寻找的任何具体内容都会有所帮助。

4

4 回答 4

5

如果这个人是一个优秀的程序员,他/她有其他语言的经验。(作为一个从 COBOL 甚至更糟糕的 RPG/II 开始的老屁说话。)即使这个人从未从事过其他任何工作。

以下是您可能会问的一些问题:

  • “你是怎么开始接触电脑的?”
  • “你会为了好玩而编程吗?”
  • “为什么要迁移到 C++ 环境?” (这是一个特别好的问题,因为现在实际上很难找到好的 COBOL 程序员。我敢打赌,这个人想学习新东西。)
  • “你做过汇编语言编程吗?” (如果他们对这台机器感到满意,他们会很快接受 C/C++ 的几率会大得多。)
  • “你能描述一下‘面向对象编程’是什么意思吗?” (关键:寻找“对象”是什么、“继承”和“多态性”的描述。如果可行,询问他们何时使用继承与聚合,即“是”关系与“具有”关系。)
  • “你家里有一台 Windows 电脑还是有一台真正的电脑?”

如果他们声称有任何 C++ 知识,那么一组非常好的筛选问题是:

  • “C 中的声明定义有什么区别?”
  • “一个类中的‘私有’、‘受保护’和‘公共’声明有什么区别?”
  • “什么是‘朋友’?” (如果他们知道说“在 C++ 中只有你的朋友可以访问你的私人部分”,那就加分。)
  • “什么是虚拟成员函数?”
  • “什么是‘虚拟继承’?”
于 2009-04-11T03:49:13.397 回答
5

最好的事情是,给他一个任务,类似于他在你的公司必须做的事情。告诉他他可以使用伪代码(所以不需要互联网)。

此外,Cobol 的主要问题是掌握 OO(因为 Cobol 主要是程序性的......我知道新的 OO 版本)。

Cobol 人的另一个陷阱是掌握范围概念,作为传统的 Cobol,每个变量从他所在的应用程序的开始到底部都存在。

于 2009-04-11T02:43:22.557 回答
2

确保他们了解并理解结构/类、类型、多态性、模板、函数以及最重要的指针。确保他们理解语法。例如,他们将如何声明一个指向带有两个整数参数的 void 函数的指针?他们将如何解决最棘手的解析?初始化列表如何优化代码?他们熟悉标准模板库吗?他们可以手工编写原始链表或向量数组吗?这些东西是你想要一个能够编写高效和干净代码的程序员的东西。

于 2012-01-25T08:13:04.510 回答
1

弄清楚被采访者在 C++ 方面有多好不是更重要吗,如果那是他应该做的事情吗?

于 2009-04-11T02:42:52.573 回答