The Nature of PatternsA Strategy Moving Forward
Why PatternsEncapsulates Best Practices and Lessons Learned Reusable Solutions to Recurring ProblemsForms a Vocabulary for Describing Architecture
What is Wrong With PatternsOften Not Well UnderstoodOften MisusedOften Causes Confusion Instead of ClarityOnce Done Poorly Everyone is Inclined to Avoid Future Opportunities
Steps for Using Patterns EffectivelyRefactor To PatternsRefactor Towards PatternsRefactor From PatternsTRAIN TRAINTRAINTRAINStudy Patterns in ContextStudy Patterns Outside of a Project Before Using
Strategy PatternEncapsulate Related Algorithms Behind a Common InterfaceMultiple Types Implement the Common InterfaceSwitch Implementations by Switching TypesBecause Each Type Implements the Common Interface, Each Type can be Treated the Same
Sample StrategiesPlug-insProvider PatternsAmortization Schedules in a Mortgage CalculatorMultiple Views to a Single PresenterState Object for State Specific Business Logic Logic
Strategy CodePassword Complexity ValidationEach Class Will Define a Validation TestDriver Process Will Loop Through the Configured Tests and Evaluate the Results
Code Demo

The Nature Of Patterns

  • 1.
    The Nature ofPatternsA Strategy Moving Forward
  • 2.
    Why PatternsEncapsulates BestPractices and Lessons Learned Reusable Solutions to Recurring ProblemsForms a Vocabulary for Describing Architecture
  • 3.
    What is WrongWith PatternsOften Not Well UnderstoodOften MisusedOften Causes Confusion Instead of ClarityOnce Done Poorly Everyone is Inclined to Avoid Future Opportunities
  • 4.
    Steps for UsingPatterns EffectivelyRefactor To PatternsRefactor Towards PatternsRefactor From PatternsTRAIN TRAINTRAINTRAINStudy Patterns in ContextStudy Patterns Outside of a Project Before Using
  • 5.
    Strategy PatternEncapsulate RelatedAlgorithms Behind a Common InterfaceMultiple Types Implement the Common InterfaceSwitch Implementations by Switching TypesBecause Each Type Implements the Common Interface, Each Type can be Treated the Same
  • 6.
    Sample StrategiesPlug-insProvider PatternsAmortizationSchedules in a Mortgage CalculatorMultiple Views to a Single PresenterState Object for State Specific Business Logic Logic
  • 7.
    Strategy CodePassword ComplexityValidationEach Class Will Define a Validation TestDriver Process Will Loop Through the Configured Tests and Evaluate the Results
  • 8.