何时在 OOP 中创建新类?

When to create a new class in OOP?

提问人:Henrique Rodrigues 提问时间:1/19/2023 更新时间:1/19/2023 访问量:120

问:

我有 C 编程的经验,使用代码解决问题的过程方法。我最终决定学习OOP,因为它在现代语言中被广泛使用。但是我很难理解我们应该如何在这种范式中设计我们的应用程序。

我将澄清我的意思:在 C(过程编程)中,我们有一个 main 函数。我们根据需要创建新函数,并调用它们以实现我们想要的。这就是它的工作原理(以尽可能短的方式)。

我忍不住尝试用 OOP 语言做同样的事情。我尝试编写的每个程序,我都会创建各种函数并在主类中调用它们。我真的不知道什么时候创建新类,以及我们如何知道它们设计得正确。

我认为使用 OOP 语言的程序员每天都会创建大量类,使用大量继承、接口、抽象类等。但是,如果我在一个程序中创建三个类,对我来说就像很多一样。这很常见吗?OOP 的三个主要支柱(封装、继承和多态)被频繁使用?

如果你能给我一个个人建议:学习OOP的好资源是什么?任何网站/博客、YT 频道、书籍都很棒。因为我最想念的是引用好的书面代码。我所看到的只是“猫类”、“哺乳动物类”、“汽车类”等基本示例。如果有人能给我一个提示,让我找到更复杂程序的好参考资料,那将有很大帮助!感谢您:D的任何帮助

OOP 语言无关

评论

0赞 topsail 1/19/2023
你可以使用 Java,然后一切都必须是一个类,这样你会得到很多练习:)
1赞 Matt Timmermans 1/19/2023
从SOLID原则开始。它们适用于所有软件开发。在 OOP 语言中,您将使用 OOP 结构(如接口和类)来实现它们。en.wikipedia.org/wiki/SOLID
1赞 berhalak 1/19/2023
这是一个很好的问题。我编程“OOP”很多年了,:D仍然不知道正确答案。我有争议的观点是:忘掉OOP和其他原则吧,你可以在网上或书本上找到。OOP 之所以让人们感到困惑,是因为它不是一种编程技术,而是一种设计框架。您可以使用所有这些原则(如多态性和行为封装(而不是数据封装)来设计软件,而不是实现它。此外,小型程序不会从这种方法中受益,OOP 适用于考虑大量代码重用的大型应用程序。
1赞 berhalak 1/19/2023
这是一本开始你的 OOP 之旅的好书:Timothy A Budd 的面向对象编程简介第三版
4赞 Holger 1/20/2023
好吧,每次你有一个或多个函数在它上面操作时,你就有一个潜在的候选者。请记住,对象封装了数据行为,因此函数本身不是类的候选者。structstructclass

答: 暂无答案