UML - 我从哪里开始?我什至需要学习它吗?
UML - Where do I start? Do I even need to learn it?
我目前正在学习成为一名开发人员。在解决问题时,我发现自己很难理解问题、要求、事物之间的联系等...
然后我偶然发现了 Mosh Hamedani 的设计模式课程,发现了 UML - 统一建模语言,思考 “我需要这个!这个将帮助我成为更好的问题解决者/开发者。"
我真的很讨厌不知道自己到底在做什么的感觉。即使是一个简单的例子,比如在 React 中制作一个 counter 应用程序。对软件开发没有基本的了解,光看教程就没意义了。
所以有了这个post,我想问:UML能帮我吗:
- 构建软件时识别/组织需求?
- 更好的可视化/理解算法和数据结构?
使用 UML,我可以:
- 制作图表来解释和理解算法的工作原理? (例如递归函数)。
- 让我了解我要构建的东西的整个结构,从简单到大型复杂系统?
如果 UML 可以完成所有这些,除了来自 Youtube 的视频教程,我在哪里可以找到免费资源 到 学习和掌握 UML?
谢谢!
Whosebug 不是一个获取有关如何学习软件设计、开发等方面建议的平台。afaik。话虽如此,我会尽力回答您的问题。 (它将是 opinion-based)
Will UML help me:
- Identify / Organize the requirements when building software?
UML 是一种语言,可帮助您可视化已有的模型,以便更好地与其他开发人员交流这些想法。它不会帮助您自己创建这些模型。
- Better Visualization / Understanding Algorithms & Data Structures?
不,你必须分别学习数据结构和算法才能理解它们。
With UML, can I:
- Make diagrams to explain & understand how Algorithms work? (Recursive functions for example).
特别是算法,没有。由于 UML 是统一 建模 语言,它可以帮助您描述模型,例如软件设计模式(例如,class OOP 中的图表和方法)。算法通常用伪代码来描述。
- Make me knowing the entire structure of what I'm going to build, from simple to big complex systems?
如果您完全理解 UML,那么它将帮助您查看现有的 UML 并了解正在发生的事情、给定系统中的不同组件如何相互交互等,但它最终不会帮助您构建一个本身。
UML 只是软件设计的一小部分,它的目标主要是在人与人之间有效地交流思想,因为通过文本描述复杂的系统效率低下且难以理解。通过一致的规则和符号,我们可以互相讨论我们如何设计软件并更好地确定要改进的地方等。
如果你想学习数据结构和算法,应该有这方面的课程。 (我敢肯定有开放的大学课程)如果你想学习软件设计,学习设计模式、需求等应该对你有更好的帮助,而 UML 只是其中的一小部分。无需关注 UML 本身。
我目前正在学习成为一名开发人员。在解决问题时,我发现自己很难理解问题、要求、事物之间的联系等...
然后我偶然发现了 Mosh Hamedani 的设计模式课程,发现了 UML - 统一建模语言,思考 “我需要这个!这个将帮助我成为更好的问题解决者/开发者。"
我真的很讨厌不知道自己到底在做什么的感觉。即使是一个简单的例子,比如在 React 中制作一个 counter 应用程序。对软件开发没有基本的了解,光看教程就没意义了。
所以有了这个post,我想问:UML能帮我吗:
- 构建软件时识别/组织需求?
- 更好的可视化/理解算法和数据结构?
使用 UML,我可以:
- 制作图表来解释和理解算法的工作原理? (例如递归函数)。
- 让我了解我要构建的东西的整个结构,从简单到大型复杂系统?
如果 UML 可以完成所有这些,除了来自 Youtube 的视频教程,我在哪里可以找到免费资源 到 学习和掌握 UML?
谢谢!
Whosebug 不是一个获取有关如何学习软件设计、开发等方面建议的平台。afaik。话虽如此,我会尽力回答您的问题。 (它将是 opinion-based)
Will UML help me:
- Identify / Organize the requirements when building software?
UML 是一种语言,可帮助您可视化已有的模型,以便更好地与其他开发人员交流这些想法。它不会帮助您自己创建这些模型。
- Better Visualization / Understanding Algorithms & Data Structures?
不,你必须分别学习数据结构和算法才能理解它们。
With UML, can I:
- Make diagrams to explain & understand how Algorithms work? (Recursive functions for example).
特别是算法,没有。由于 UML 是统一 建模 语言,它可以帮助您描述模型,例如软件设计模式(例如,class OOP 中的图表和方法)。算法通常用伪代码来描述。
- Make me knowing the entire structure of what I'm going to build, from simple to big complex systems?
如果您完全理解 UML,那么它将帮助您查看现有的 UML 并了解正在发生的事情、给定系统中的不同组件如何相互交互等,但它最终不会帮助您构建一个本身。
UML 只是软件设计的一小部分,它的目标主要是在人与人之间有效地交流思想,因为通过文本描述复杂的系统效率低下且难以理解。通过一致的规则和符号,我们可以互相讨论我们如何设计软件并更好地确定要改进的地方等。
如果你想学习数据结构和算法,应该有这方面的课程。 (我敢肯定有开放的大学课程)如果你想学习软件设计,学习设计模式、需求等应该对你有更好的帮助,而 UML 只是其中的一小部分。无需关注 UML 本身。