About the course
Manage the Spring framework effectively to create your own system.
This video will take you through Design Patterns and considerations required with the Spring framework. You will learn to use these design patterns to solve common problems when designing an application or system using the Spring Framework. This video will not only take you through ten of the essential GoF Design Patterns but also categories of patterns, considerations, and best practices required at different stages of Application Development.
Design Patterns help us write software that is flexible and future-proof. If you’re overusing if tests, you are probably not writing a well-designed object-oriented program. You will see how to use several design patterns, instead of if tests, to write a program where logic resides in an optimal location. The examples in this course use the command pattern, decorator pattern, visitor pattern, and several others.
You will understand the Dependency Injection pattern that is the main principle behind the decoupling process that Spring does, thus making it easier to manage your code. With practical examples, you will understand how patterns listed under the GoF patterns can be used in your Application Design. You will be introduced to the MVC pattern and how it treats controllers as Plain Old Java Objects, thus making it easier for testing the controllers. You will then learn about the Factory Method, and how it relates to one of the core components of object-oriented design: polymorphism.
The code bundle for this course is available at https://github.com/PacktPublishing/Spring-Design-Patterns-and-Best-Practices
Style and Approach
This is a step-by-step approach which shows you the best way to use the Spring Framework to solve common problems when designing an application.
What You Will Learn
- How to create a Spring project from the ground up
- Why design patterns are important
- Never call a constructor again! How to use the Factory pattern and Spring auto-wiring to create objects
- Leverage the command pattern to future-proof software
- Take advantage of Spring's minimal-configuration deployment
- Add behavior to existing compiled classes with Aspect Oriented Programming
- Use Model-View-Controller to separate user interface, business logic, and data access logic
- Consider how to leverage existing business and data logic with a different user interface
Brandan Jones has been an Adjunct Assistant Professor for the University of Cincinnati since the 2000-2001 school year. He has taught many courses in programming, from introductory programming to full stack development.
Brandan proposed and created the first Android programming course at the University of Cincinnati, and has been teaching it ever since. He reapplied this course and taught it at Northwestern University’s School of Continuing Studies as well.
Brandan is the creator of the Android app PlantPlaces.com Mobile, which allows users to search for plants by color, and GPS plants. He wrote this app in 2012, using TDD principles. He used selected JSON feeds from that app in the examples in this video course.
Brandan’s mix of both academic and professional experience means that he brings real-world concepts to the classroom. Most of his high level classes include hands on experience with unit testing, scrum, and distributed version control systems.
Brandan holds a BS in Accounting and Management Information Systems from Miami University in Oxford, Ohio. He also earned a BS in Horticulture from the University of Cincinnati’s College of Design, Art, Architecture and Planning, and a Masters of Business Administration from the University of Cincinnati, Lindner College of Business, with concentrations in Operations Management and Real Estate Finance.
Spring MVC For Beginners : Build Java Web App in 25 Steps [Video]