|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/the-easiest-way-to-learn-design-patterns/
课程评论:没有评论
课程名称:学习设计模式的最简单方法 课程概述:设计模式是每位使用面向对象语言的程序员所需要熟悉的重要概念,因为它们代表了解决常见软件开发问题的明确方案。因此,程序员可以在遇到问题时,直接查找现有的设计模式,而无需重新发明轮子。然而,学习设计模式通常并不容易,尤其是对缺乏软件构建经验的开发者来说,这可能会成为他们在知名公司求职时的一大障碍。招聘经理经常会询问设计模式相关的问题,不掌握设计模式将会降低开发者的工作效率,进而影响职业发展。 设计模式难以学习的主要原因在于它们通常的教学方法。大多数课程或在线文章仅提供设计模式的集合,要求学习者逐个了解其背后的原理,然后尝试在实际情境中应用。这种过程繁琐且效果不一定理想,导致许多开发者只能记住几种自己在项目中使用的设计模式,其他的往往在学习后便被遗忘。若仅记住少数设计模式,了解在何种情况下应用它们将变得困难。 本课程提供了一种不同的方法,采用了易于学习设计模式的教学法。学习不是简单的死记硬背,而是通过关联来掌握新知识。课程首先将介绍软件开发者常见的问题,无论是何种经验水平的开发者都能与之关联。对于每种问题,接着会探讨能够解决该问题的设计模式,并讲解其核心原理及解决方案。最后,学习者将深入了解每种设计模式,明确如何在自己的代码中实施。 此外,这种结构使课程成为一个有价值的参考来源。当你不能记住设计模式时,只需找到所要解决问题的描述,就能轻松找到适用的设计模式,从而有效解决问题。
Design patters are something that you will need to get familiar with as a programmer who works with object oriented languages. And this is primarily because they represent well-defined solutions to common software development problems. So, instead of thinking through all the details of your solution, you can simply check if any of the existing design patterns can be used. You won't have to reinvent the wheel.The main problem with design patterns is that they are not necessarily easy to learn. Many developers, especially the ones who don't have a lot of software-building experience, struggle with them. But if you do struggle with them, it may prevent you from getting a programming job at a reputable organization. After all, recruiting managers often ask questions about design patterns. Otherwise, not knowing design patterns will make you less effective as a software developer, which will slow down your career progress.The main reason why design patterns are so hard to learn is because of the way they are normally taught. Usually, if you pick pretty much any course on design patterns or open pretty much any online article about them, it would provide a collection of design patterns that you would need to go through. You would then have to got through each of them, try your best to understand the principles behind it and only then try to figure out how to apply it in a real-life situation.It's a tedious process that doesn't always bring about the right results. It's not uncommon for software developers to memorize just a handful of design patterns that they have been using in their own projects. The remaining ones have been forgotten as soon as they've been learned. And it's hard to figure out which design pattern applies in which situation if you only remember a handful of them.This course provides a different approach. It uses a methodology that makes it easy to learn design patterns. So, you no longer have to brute-force your way through them. The process of effective learning is not about memorization. It's about associations. You learn new things easily when you can clearly see how new facts related to your existing knowledge. And this is precisely the method that this course is built around.You won't have to brute-force your way into design patterns. In fact, you won't even start with the design patterns. First, we will go through a list of common problems that software developers are required to solve. Those are the things that every software developer can associate with. Even if you haven't faced a particular type of a problem yet, you will still be able to easily understand its description. For each of these problems, we will go through the design patterns that can solve it. And for each one of them, you will go through its core principle and the description of how it can solve this type of a problem. Only then you will be invited to examine this particular design pattern in detail, so you can understand how to implement it in your own code.This structure of the course also makes it valuable as a reference source. Even when you don't know or don't remember design patterns, looking them up becomes easy. What you need to find is a description of the type of a problem you are trying to solve. And then you will be able to follow it to find the actual design patterns that you can apply to solve it.