提高您的面向对象编程技能的挑战是什么?
这次民意调查的目的是提供一个想法,以了解哪些练习对学习OOP有用。
挑战应该是尽可能与语言无关,要求很少或不需要使用特定的库,或者只需要最常用的库。尝试在每个答案中仅包含一个挑战,这样一来投票就仅代表该挑战的优点。如果指出了所需的技能水平,以及为什么这样做是有用的练习,这也将是很好的。
然后,可以将挑战的解决方案发布为“如何……”问题的答案,并从此处链接到。
例如:
- 挑战-实现后进先出堆栈
- 技能水平-初学者
- 基本原理-提供有关如何引用对象的经验
提高您的面向对象编程技能的挑战是什么?
这次民意调查的目的是提供一个想法,以了解哪些练习对学习OOP有用。
挑战应该是尽可能与语言无关,要求很少或不需要使用特定的库,或者只需要最常用的库。尝试在每个答案中仅包含一个挑战,这样一来投票就仅代表该挑战的优点。如果指出了所需的技能水平,以及为什么这样做是有用的练习,这也将是很好的。
然后,可以将挑战的解决方案发布为“如何……”问题的答案,并从此处链接到。
例如:
Answers:
从头开始编写具有挑战性的程序。尝试让一些人(大约五个人应该可以使用)来使用它。响应他们的更改请求。
调整程序的设计。从小开始,然后看着它成长。应对这种增长。这很难。随着时间的流逝,您还必须修复错误并进行维护,这对我来说是非常宝贵的一课。
挑战:用您选择的语言为您选择的网站/服务API编写一个包装,该包装还不存在(例如,用C#编写的ZenDesk API包装)。将包装程序作为开源发布,以供其他人使用。
技能等级:初学者到中级
基本原理:了解如何将第三方Web服务API外推到有意义的对象/类集中,从而使该API在您选择的语言中的重用更加容易。
在学习了基础知识之后,请学习“四人帮”设计模式书。
这是经典之作,对于任何想了解如何使用OO来设计常见编码问题的优雅解决方案的编码人员,都必须阅读。