从COBOL转换到C++

Jar*_*ler 3 c++ cobol

我是一名相当初级的程序员,他的任务是采访一位经验丰富的大型机COBOL程序员,为Windows Mobile进行C++开发.经验丰富,我的意思是候选人的整个编程生涯都是COBOL.

我并不反对任何特定的语言,只是略微担心我能够进行彻底的面试.

在面试中,如果没有COBOL经验,我怎么能对这位受访者的能力有一个良好的感觉?

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

我已经阅读了很多关于SO的一般访谈内容,考虑到候选人背景的性质,我会寻找什么特别的东西会有所帮助.

Ita*_*vka 5

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

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

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


Cha*_*tin 5

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

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

  • "你是如何开始使用电脑的?"
  • "你为了好玩而做任何编程吗?"
  • "为什么要迁移到C++环境?" (这是一个特别好的问题,因为现在很难找到优秀的COBOL程序员.我敢打赌这个人想要学习新东西.)
  • "你做过任何汇编语言编程吗?" (如果他们对机器感到满意,他们对C/C++的评价会更好.)
  • "你能描述'面向对象编程'是什么意思吗?" (键:寻找"对象"是什么,"继承"和"多态"的描述.如果这样做,请问他们何时使用继承与聚合,即"是一个"关系vs"有一个"关系.)
  • "你家里有Windows电脑还是有真正的电脑?"

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

  • " 声明和C中的定义有什么区别?"
  • "班级中'私人','受保护'和'公开'声明之间有什么区别?"
  • "什么是'朋友'?" (如果他们知道说"在C++中只有你的朋友可以访问你的私人部分.")
  • "什么是虚拟成员功能?"
  • "什么是'虚拟继承'?"