作为第二次采访,我让人们坐下来编写代码......我试着让问题真的与技术无关.
我的编程问题,我没有真正运用人们的OO能力.我倾向于尝试在2小时内解决编码问题.所以,我一直在努力找到一个足够小的问题并且足够参与其暴露了人们的OO设计技巧.
有什么建议?
Jon*_*jap 16
这是我在一些培训中使用的一个问题,看起来很简单但是非常难以操作:
创建将正确表示以下构造的模型类:
你可以继续使用四边形(包括正方形,矩形,菱形等)和其他多边形.
他们解决上述问题的方式将揭示了那些了解OOP的人与那些不了解OOP的人.
理想情况下,您希望提出一个看似困难的问题,但如果您以OO术语思考,则需要一个简单,优雅,明显的解决方案
也许:
使用面向对象技术为此设计解决方案
一个OO解决方案是拥有Person,Customer,Account和AccountPermissions,其中Account指定Person和Customer以及可选的Parent Account.使用递归的Account对象会破坏直接ERD解决方案可能产生的麻烦的人/团队/部门/项目结构
这些不是专门的 OO 问题,但请查看标记为面试问题的其他问题
编辑:实现一些设计模式怎么样?我在该领域没有最好的知识,但似乎你会以一个问题的价格得到两个问题。您可以在一个问题中测试 OO 和设计模式。