Company: Pluralsight Author: Andrejs Doronins Full Title: Java: Refactoring To Design Patterns Year: 2020 Language: English Genre: Educational: Programming Skill Level: Intermediate Price: - - Files: MP4 (+ Exercise Files, Slides .PDF) Time: 01:27:00 Video: AVC, 1280 x 720 (1.778) at 30.000 fps, 200 kbps Audio: AAC at 96 Kbps, 2 channels, 48.0 KHz Knowing design patterns is an essential skill in software craftsmanship. But how do you go about learning them when there are so many? Watch this course to quickly learn how to refactor messy code to the most useful and frequently used patterns. Challenges arise as software grows in size and complexity, and design patterns offer common solutions to them. In this course, Java: Refactoring to Design Patterns, you will gain the ability to convert typical procedural code into the most useful and frequently used design patterns. First, you will learn how to encapsulate object creation with so-called factories that greatly reduce future maintenance cost. Next, you will discover how to get rid of long if-else statements and reduce conditional complexity using behavioral patterns. Finally, you will explore how structural patterns help you better organize your code. When you are finished with this course, you will have the skills to write code that is organized, maintainable, and pleasant to work with. Lessons: 1. Course Overview 01. Course Overview 2. Why and When to Refactor to Patterns 02. Challenges When Learning Design Patterns 03. Overcoming the Challenges 04. Prerequisites and Where This Course Stands 05. Course and Project Overview 3. Better Object Creation with Factories 06. Understanding Factories 07. Project Overview 08. Fixing No-arg Constructors with Dependency Injection 09. Encapsulating with Static Factory Methods 10. More Benefits with Static Factory Methods 11. Moving Creation to a Dedicated Factory Class 12. Refactoring to Factory Method Pattern 13. What We Didn't Cover 14. Summary 4. Eliminating Conditional Complexity 15. Why Fix Conditional Complexity 16. Fix Low-level Branching Code First 17. Replace Conditionals with Polymorphism 18. Understand the Strategy Pattern 19. Refactor to Strategy 20. Strategy Becomes Insufficient 21. Replace Strategy with Functional Programming 22. Object-oriented vs. Functional Programming 23. What We Didn't Cover 24. Summary 5. Improving Interfaces with Wrappers 25. Most Frequent Wrappers 26. Adapter vs. Decorator vs. Facade 27. Adapter 28. Decorator 29. Facade 30. Module Wrap Up 31. Course Wrap Up Our members see more. Join us! ------------- Our members see more. Join us!