• LOGIN
    • No products in the basket.
2 STUDENTS ENROLLED
  • Profile photo of Udayan datta
  • Profile photo of Srinivas Prabhala
02:24

Course Description

  • Prerequisites: Basic understanding of Java.
  • Taught by a Stanford-educated, ex-Googler, husband-wife team.
  • More than 50 real-world examples.

This is an intensely practical, deeply thoughtful, and quirky take on 24 Design Patterns that matter.

Let’s parse that.

  • The course is intensely practical, bursting with examples – the more important patterns have 3-6 examples each. More than 50 real-world Java examples in total.
  • The course is deeply thoughtful, and it will coax and cajole you into thinking about the irreducible core of an idea – in the context of other patterns, overall programming idioms and evolution in usage.
  • The course is also quirky. The examples are irreverent. Lots of little touches: repetition, zooming out so we remember the big picture, active learning with plenty of quizzes. There’s also a peppy soundtrack, and art – all shown by studies to improve cognition and recall.
  • Lastly, the patterns matter because each of these 24 is a canonical solution to recurring problems.

What’s Covered:

  • Decorator, Factory, Abstract Factory, Strategy, Singleton, Adapter, Facade, Template, Iterator, MVC, Observer, Command, Composite, Builder, Chain of Responsibility, Memento, Visitor, State, Flyweight, Bridge, Mediator, Prototype, Proxy, Double-Checked Locking and Dependency Injection.
  • The only GoF pattern not covered is the Interpreter pattern, which we felt was too specialized and too far from today’s programming idiom; instead we include an increasingly important non-GoF pattern, Dependency Injection.
  • Examples: Java Filestreams, Reflection, XML specification of UIs, Database handlers, Comparators, Document Auto-summarization, Python Iterator classes, Tables and Charts, Threading, Media players, Lambda functions, Menus, Undo/Redo functionality, Animations, SQL Query Builders, Exception handling, Activity Logging, Immutability of Strings, Remote Method Invocation, Serializable and Cloneable, networking.
  • Dependency Inversion, Demeter’s Law, the Open-Closed Principle, loose and tight coupling, the differences between frameworks, libraries and design patterns.

Talk to us!

  • Mail us about anything – anything! – and we will always reply 🙂

What are the requirements for taking this course?

  • There are no pre-requisites other than curiosity – about Design, about Patterns, about Life 🙂
  • Basic understanding of Java.

What are you going to get from this course?

  • Over 65 lectures and 12 hours of content!
  • Identify situations that call for the use of a Design Pattern
  • Understand each of 24 Design Patterns – when, how, why and why not to use them
  • Distill the principles that lie behind the Design Patterns, and apply these in coding and in life, whether or not a Design Pattern is needed
  • Spot programming idioms that are actually built on Design Patterns, but that are now hiding in plain sight

Who is this course for?

  • Yep! Engineers – from street-smart coders to wise architects – ought to take this course. After this class, you’ll look at software design with a new pair of eyes.
  • Yep! Product Managers ought to take this course – you will learn to understand the ‘how’ of Software Design without being constrained by it.
  • Yep! Technology executives and investors who don’t write code ought to take this course – after this you will always have an intelligent point-of-view on software, and won’t find your eyes glazing over when its time to talk nitty-gritty
  • Computer Science majors (undergrad or grad) – if you are among the folks that make ‘real world example Observer Pattern’ such a common search phrase on Google, this is precisely the place for you.
  • Yep! Journalists, Wall Street types or IP lawyers seeking to understand recurring patterns of problems and solutions in technology.
  • Yep! If you are prepping hard for software engineering interviews 🙂
  • Nope! This course is not right for you if you are looking for a Programming 101 course. That’s not because there are pre-requisites, but simply because a Programming 101 course focuses on syntax, and on doing, while this course focuses on design, and on thinking.

    Course Reviews

    N.A

    ratings
    • 1 stars0
    • 2 stars0
    • 3 stars0
    • 4 stars0
    • 5 stars0

    No Reviews found for this course.

    © 2016. LearnBox Education.

    Login

    Register

    Create an Account
    Create an Account Back to login/register