2009-08-21 93 views
18

我一直在网上搜索一段时间。我正在寻找针对OOD练习的小范例练习(&,针对一些内部TDD研讨会)。
如果有一个单一的地方,这种需求正在被送达,请点我吧..并关闭了这个问题面向对象/面向对象练习/代码练习

约束:

  1. 语言无关的现实世界中的问题
  2. 小:某些需要一个小时才能解决的问题(或者具有可以适应此约束的子部分)。
  3. 不以算法为中心:不专注于解决计算任务。 (有多个网站可用于此类别。)涉及> 2个互动实体。
  4. 由多人解决,最好是你自己:验证完好。首选链接。请不要发布一些可以是一个很好的锻炼......主观

相似,所以怀疑60109,但答案在这里不符合我的需要。我发现在长时间接受日常工作之后,我已经与OOD失去了联系(打乱了想法)。需要让它恢复原状。

更新:我们是否总体不使用简短的OOP练习?我希望我有一堆可以选择。然而,我的网络搜索(这是在制定正确的搜索字符串中的差异性练习),并且这里没有回应似乎表明另有说明。也许我在不好的时候发布到SO上,在这种情况下,为了获得更多的回复,这个帖子会出现。

+1

当涉及现实世界的问题时,没有“正确的解决方案”这样的东西。 – 2009-08-21 07:30:33

+1

@尼尔不需要。目的是体验和研究达成解决方案的过程。 – Gishu 2009-08-21 11:53:29

回答

1

戴夫·托马斯CodeKata

善良,

+0

你有什么具体的卡塔?大部分练习都集中在开发算法思维和编程技巧上 - 除了超市定价之外......这很好。 – Gishu 2009-08-21 09:38:26

+0

做BinaryChop练习是我的最爱。审查不同的方法部分是让我回到它的东西。我试图每隔几个月做一个星期左右的时间。 善良, 丹 – 2009-08-21 10:26:36

3

杰夫湾Object Calisthenics。遵循这些将提高你的面向对象技能。

+1

这些似乎是更好的面向对象设计的规则或准则。我正在寻找简短的问题陈述或场景,以OO方式尝试和建模 – Gishu 2009-08-21 09:42:24

+0

我明白你在说什么,但它们通常作为一组规则在1000行代码中发挥作用 - 开发以这种方式,无论问题得到解决,都将有助于您的设计技巧。我认为,对于真正的学习,具体问题不像强迫自己学习解决问题的新技术那么重要。 – kyoryu 2009-08-22 07:30:32

1

问卷练习题

一个问题,我已经工作的在几个不同的工作中是编写一些通用的,数据驱动的调查/问卷调查功能。这不是非常复杂,但有足够的有趣的途径成为我认为的一个很好的OOD练习题。这绝对是现实世界,并在很多地方出现。

您可以开始考虑如何构建Survey。它显然是由Questions组成的,但是你是否也想CategoriesQuestion可以有子问题吗?一个子问题可以有子问题吗?你可以走多远?

一个问题可能需要有潜力Scores。你有什么类型的分数?你有什么类型的问题(多选,多答案,自由文本等)?

一旦您掌握了基本的业务逻辑,您还可以考虑如何显示调查。也许你有一个SurveyRenderer和一个QuestionRenderer?你如何决定如何呈现不同类型的问题? (也许你使用策略模式......如this SO question。)如何呈现调查的只读版本?

你也可以考虑持久性。你如何记录对空白问卷的回答?调查的对象图如何映射到数据库(或其他支持存储),反之亦然?