oop - 帮助非 oop 开发人员了解基于接口(interface)的编程的最佳比喻是什么?

标签 oop interface

关闭。这个问题是opinion-based .它目前不接受答案。












想改进这个问题?更新问题,以便 editing this post 可以用事实和引用来回答它.

3年前关闭。




Improve this question




我很难让我的团队熟悉基于界面的编程……有人有什么建议吗?

最佳答案

为了帮助您的团队熟悉这个想法,最好的方法是演示基于接口(interface)的开发可以完成什么,并将其与没有它需要如何完成相同的事情进行对比。为了让他们“真正”接受并开始理解它,他们首先需要理解并感受到它所解决的问题的痛苦。他们真的需要与他们自己或团队进行“每次发生 Y 时我都不得不做 X”的对话。在我的“成长”岁月里,我父亲向我灌输的一件事就是这个小 gem :

No matter how many times it's been told to you, you'll NEVER have the answer until YOU ask the question.



一旦发生这种对话(由个人或团队自行发起),这就是真正的学习发生的地方。诀窍是营造一个能够激发这类问题的环境。如果您可以向他们表明他们想要接口(interface)解决的问题的答案,那么他们会自己提出问题。

展示接口(interface)有用性的一个很好的例子如下:

你被指派在国际数学大会上担任保镖。你被告知只让那些可以为“什么是二加二”这个问题提供正确答案的人进入。由于这是一项国际赛事,自然有很多人试图参加,他们会说许多不同的语言。首先,您的策略是弄清楚(或猜测)请求进入的人说什么语言,然后找到一个说同样语言的口译员并通过他提出问题。事实证明这是有效的,很快你就会学会快速识别一些语言,现在知道哪些口译员会说这种语言,但是当有人说你无法完全识别的语言出现时,你肯定会很痛苦必须花费所有时间来弄清楚它是什么,然后找到合适的口译员。所以,知道必须有更好的方法,你试着想出一种改进的方法来完成你的工作,那就是你的时候。你得到一令纸和一些记号笔,每次有人来参加 session 时,你在一张纸上写下以下内容:
2 + 2 =

瞧,它起作用了!每个人都很快给出了答案。您不必弄清楚对方说什么语言或找翻译。哎呀,你甚至不在乎他们说什么语言,他们只是回答问题,因为他们都懂数学!您没有单独找出每个案例,而是使用了参加数学大会的每个人都理解的“IKnowMath”界面。

关于oop - 帮助非 oop 开发人员了解基于接口(interface)的编程的最佳比喻是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/429068/

相关文章:

java - 实现 Comparable 以使用字符串按字母顺序排序

typescript - 如何在 TypeScript 接口(interface)对象中定义可选数据?

python - 如何从另一个对象的方法访问对象的属性,这是 Python 中的属性之一?

c++ - 如何用模板解决这个循环继承问题?

php - 从php中的子对象范围内访问父对象变量

python - 为抽象函数指定退出函数

interface - uml 中的类与接口(interface)

java - 如何用泛型实现枚举?

java - 2个类之间有什么关系?

matlab - 如何正确命名和组织 MATLAB 文件类?