Object-Oriented Patterns in Java

3 Day Course
Code PSD024

Book Now - 1 Delivery Method Available:

Scheduled Online Onsite

Overview

Java provides a context for design and expressing design. It offers a number of mechanisms that may be used to express design, working through from problem to solution. Principles provide a mental framework for developers to both work within and take advantage of. Many problems have solutions that are structurally similar to each other, with common issues and rationale. This is something that more experienced developers learn to recognise and apply. A pattern captures and communicates this experience in a reusable form. The course introduces these principles and practices to Java developers and is based around lectures, discussion and exercises.

Modules

Hide all

OO Concepts (1 topic)

  • Objects, Identity, State, Behaviour, Encapsulation, Classes, Objects, Polymorphism, Inheritance, Overloading, Overriding.

Modelling (1 topic)

  • UML, Patterns, Prototyping, Testing, Refactoring, Iterative and Incremental development.

Structuring Objects (1 topic)

  • Object Relationships, Delegation, Design by Contract, CRC Cards, Collections, Values, Entities, Services.

Design Principles (1 topic)

  • Structure, Delegation, Decoupling, Complexity, Simplicity, Minimalism, Context, Substitutability, Delegation, Dependency, Constraints, Coupling, Cohesion.

Patterns (4 topics)

  • The Design Patterns book.
  • Creational patterns: Abstract Factory, Factory Method, Prototype.
  • Structural Patterns: Adapter, Bridge, Composite, Flyweight, Proxy.
  • Behavioural patterns: Command, Iterator, Observer, State, Template Method, Visitor, Null Object.

Idioms (1 topic)

  • Collections, Iteration, Whole Value, Enumeration Values, Copied Value, Immutable Value, Mutable Companion.

Prerequisites

The course is at an intermediate to advanced level and is suitable for developers with existing Java skills. Existing familiarity with patterns is not required.

or call:408-759-5074

Course PDF

Print

Share this Course

+1
Share

Recommend this Course

Sections