SlideShare ist ein Scribd-Unternehmen logo
1 von 8
The Nature of Patterns A Strategy Moving Forward
Why Patterns Encapsulates Best Practices and Lessons Learned  Reusable Solutions to Recurring Problems Forms a Vocabulary for Describing Architecture
What is Wrong With Patterns Often Not Well Understood Often Misused Often Causes Confusion Instead of Clarity Once Done Poorly Everyone is Inclined to Avoid Future Opportunities
Steps for Using Patterns Effectively Refactor To Patterns Refactor Towards Patterns Refactor From Patterns TRAIN TRAINTRAINTRAIN Study Patterns in Context Study Patterns Outside of a Project Before Using
Strategy Pattern Encapsulate Related Algorithms Behind a Common Interface Multiple Types Implement the Common Interface Switch Implementations by Switching Types Because Each Type Implements the Common Interface, Each Type can be Treated the Same
Sample Strategies Plug-ins Provider Patterns Amortization Schedules in a Mortgage Calculator Multiple Views to a Single Presenter State Object for State Specific Business Logic Logic
Strategy Code Password Complexity Validation Each Class Will Define a Validation Test Driver Process Will Loop Through the Configured Tests and Evaluate the Results
Code Demo

Weitere ähnliche Inhalte

Was ist angesagt?

1 introduction to problem solving and programming
1 introduction to problem solving and programming1 introduction to problem solving and programming
1 introduction to problem solving and programming
Rheigh Henley Calderon
 
G322 videogames intro
G322 videogames introG322 videogames intro
G322 videogames intro
guest8e1604
 
G322video games lsn 1
G322video games lsn 1G322video games lsn 1
G322video games lsn 1
cigdemkalem
 

Was ist angesagt? (19)

Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...
Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...
Make the Most of Your Time: How Should the Analyst Work with Automated Tracea...
 
Supervised Machine Learning With Types And Techniques
Supervised Machine Learning With Types And TechniquesSupervised Machine Learning With Types And Techniques
Supervised Machine Learning With Types And Techniques
 
Key learnings from my refactor journey.
Key learnings from my refactor journey.Key learnings from my refactor journey.
Key learnings from my refactor journey.
 
Computational methods couurseout line
Computational methods couurseout lineComputational methods couurseout line
Computational methods couurseout line
 
Supervised and Unsupervised Machine Learning
Supervised and Unsupervised Machine LearningSupervised and Unsupervised Machine Learning
Supervised and Unsupervised Machine Learning
 
1 introduction to problem solving and programming
1 introduction to problem solving and programming1 introduction to problem solving and programming
1 introduction to problem solving and programming
 
G322 videogames intro
G322 videogames introG322 videogames intro
G322 videogames intro
 
G322video games lsn 1
G322video games lsn 1G322video games lsn 1
G322video games lsn 1
 
Assign1
Assign1Assign1
Assign1
 
Maze Path Finding
Maze Path FindingMaze Path Finding
Maze Path Finding
 
Marking breakdown
Marking breakdownMarking breakdown
Marking breakdown
 
Machine Learning
Machine LearningMachine Learning
Machine Learning
 
Formato internship application-form
Formato internship application-formFormato internship application-form
Formato internship application-form
 
Applicatons of derivative optimization and related rates
Applicatons of derivative optimization and related ratesApplicatons of derivative optimization and related rates
Applicatons of derivative optimization and related rates
 
Introductory Programming With Python
Introductory Programming With PythonIntroductory Programming With Python
Introductory Programming With Python
 
Unsupervised Machine Learning Ml And How It Works
Unsupervised Machine Learning Ml And How It WorksUnsupervised Machine Learning Ml And How It Works
Unsupervised Machine Learning Ml And How It Works
 
Supervised learning
  Supervised learning  Supervised learning
Supervised learning
 
Test framing(sqa)
Test framing(sqa)Test framing(sqa)
Test framing(sqa)
 
Chapter 8 comparing and contrasting computers and technology
Chapter 8 comparing and contrasting computers and technologyChapter 8 comparing and contrasting computers and technology
Chapter 8 comparing and contrasting computers and technology
 

Andere mochten auch

Patterns number and geometric
Patterns  number and geometricPatterns  number and geometric
Patterns number and geometric
amdzubinski
 
Repeating and growing patterns
Repeating and growing patternsRepeating and growing patterns
Repeating and growing patterns
Jessica Weesies
 
Fibonacci sequence
Fibonacci sequenceFibonacci sequence
Fibonacci sequence
lmrio
 

Andere mochten auch (20)

Patterns in nature
Patterns in naturePatterns in nature
Patterns in nature
 
Natural patterns powerpoint
Natural patterns powerpointNatural patterns powerpoint
Natural patterns powerpoint
 
Nine patterns in nature by CuriOdssey
Nine patterns in nature by CuriOdsseyNine patterns in nature by CuriOdssey
Nine patterns in nature by CuriOdssey
 
Seeing Math Patterns in Nature
Seeing Math Patterns in NatureSeeing Math Patterns in Nature
Seeing Math Patterns in Nature
 
Maths in nature fibonacci
Maths in nature fibonacciMaths in nature fibonacci
Maths in nature fibonacci
 
Flowers
FlowersFlowers
Flowers
 
Design Patterns - Inspirations From Nature
Design Patterns - Inspirations From NatureDesign Patterns - Inspirations From Nature
Design Patterns - Inspirations From Nature
 
Patterns in Nature
Patterns in NaturePatterns in Nature
Patterns in Nature
 
Prototype Design Pattern
Prototype Design PatternPrototype Design Pattern
Prototype Design Pattern
 
Design Patterns and Usage
Design Patterns and UsageDesign Patterns and Usage
Design Patterns and Usage
 
Patterns
PatternsPatterns
Patterns
 
Patterns
PatternsPatterns
Patterns
 
Growing Patterns
Growing PatternsGrowing Patterns
Growing Patterns
 
Patterns number and geometric
Patterns  number and geometricPatterns  number and geometric
Patterns number and geometric
 
Repeating and growing patterns
Repeating and growing patternsRepeating and growing patterns
Repeating and growing patterns
 
Nature of sociology
Nature of sociologyNature of sociology
Nature of sociology
 
Types Of Flower
Types Of  FlowerTypes Of  Flower
Types Of Flower
 
Math in nature
Math in natureMath in nature
Math in nature
 
Fibonacci sequence
Fibonacci sequenceFibonacci sequence
Fibonacci sequence
 
TYPES OF PATTERN AND ITS APPLICATION
TYPES OF PATTERN AND ITS APPLICATIONTYPES OF PATTERN AND ITS APPLICATION
TYPES OF PATTERN AND ITS APPLICATION
 

Ähnlich wie The Nature Of Patterns

Odd E验收测试驱动开发实战
Odd E验收测试驱动开发实战Odd E验收测试驱动开发实战
Odd E验收测试驱动开发实战
George Ang
 
B2 2006 sizing_benchmarking (1)
B2 2006 sizing_benchmarking (1)B2 2006 sizing_benchmarking (1)
B2 2006 sizing_benchmarking (1)
Steve Feldman
 

Ähnlich wie The Nature Of Patterns (20)

Design pattern & categories
Design pattern & categoriesDesign pattern & categories
Design pattern & categories
 
Behavioral design patterns presentation
Behavioral design patterns presentationBehavioral design patterns presentation
Behavioral design patterns presentation
 
Modeling Requirements Narrated2
Modeling Requirements Narrated2Modeling Requirements Narrated2
Modeling Requirements Narrated2
 
Modeling Requirements with SysML
Modeling Requirements with SysML Modeling Requirements with SysML
Modeling Requirements with SysML
 
Testing Harmony Design Patterns & Anti-Patterns Unveiled
Testing Harmony Design Patterns & Anti-Patterns UnveiledTesting Harmony Design Patterns & Anti-Patterns Unveiled
Testing Harmony Design Patterns & Anti-Patterns Unveiled
 
Getting Unstuck: Working with Legacy Code and Data
Getting Unstuck: Working with Legacy Code and DataGetting Unstuck: Working with Legacy Code and Data
Getting Unstuck: Working with Legacy Code and Data
 
Unit No 6 Design Patterns.pptx
Unit No 6 Design Patterns.pptxUnit No 6 Design Patterns.pptx
Unit No 6 Design Patterns.pptx
 
Refactoring
RefactoringRefactoring
Refactoring
 
Using Agile Processes on Documentum Projects
Using Agile Processes on Documentum ProjectsUsing Agile Processes on Documentum Projects
Using Agile Processes on Documentum Projects
 
Prompt Engineering for AI and ML Technical Product Managers - 2023-08-21 00.5...
Prompt Engineering for AI and ML Technical Product Managers - 2023-08-21 00.5...Prompt Engineering for AI and ML Technical Product Managers - 2023-08-21 00.5...
Prompt Engineering for AI and ML Technical Product Managers - 2023-08-21 00.5...
 
Anti Patterns Siddhesh Lecture1 Of3
Anti Patterns Siddhesh Lecture1 Of3Anti Patterns Siddhesh Lecture1 Of3
Anti Patterns Siddhesh Lecture1 Of3
 
Odd E验收测试驱动开发实战
Odd E验收测试驱动开发实战Odd E验收测试驱动开发实战
Odd E验收测试驱动开发实战
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
How I Learned To Apply Design Patterns
How I Learned To Apply Design PatternsHow I Learned To Apply Design Patterns
How I Learned To Apply Design Patterns
 
C3 w4
C3 w4C3 w4
C3 w4
 
Managing the Machine Learning Lifecycle with MLflow
Managing the Machine Learning Lifecycle with MLflowManaging the Machine Learning Lifecycle with MLflow
Managing the Machine Learning Lifecycle with MLflow
 
Speeding up web_application
Speeding up web_applicationSpeeding up web_application
Speeding up web_application
 
Code Refactoring using rails
Code Refactoring using railsCode Refactoring using rails
Code Refactoring using rails
 
Design patterns
Design patternsDesign patterns
Design patterns
 
B2 2006 sizing_benchmarking (1)
B2 2006 sizing_benchmarking (1)B2 2006 sizing_benchmarking (1)
B2 2006 sizing_benchmarking (1)
 

Mehr von Nick Harrison (10)

Revisiting refactoring
Revisiting refactoringRevisiting refactoring
Revisiting refactoring
 
Refactoring workshop
Refactoring workshopRefactoring workshop
Refactoring workshop
 
Introducing fx cop
Introducing fx copIntroducing fx cop
Introducing fx cop
 
Metric driven refactoring
Metric driven refactoringMetric driven refactoring
Metric driven refactoring
 
Developer power tools
Developer power toolsDeveloper power tools
Developer power tools
 
Revisiting Refactoring
Revisiting RefactoringRevisiting Refactoring
Revisiting Refactoring
 
Reflecting On The Code Dom
Reflecting On The Code DomReflecting On The Code Dom
Reflecting On The Code Dom
 
Refactoring Workshop
Refactoring WorkshopRefactoring Workshop
Refactoring Workshop
 
Code Inventory
Code InventoryCode Inventory
Code Inventory
 
Adaptive Architecture
Adaptive ArchitectureAdaptive Architecture
Adaptive Architecture
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

The Nature Of Patterns

  • 1. The Nature of Patterns A Strategy Moving Forward
  • 2. Why Patterns Encapsulates Best Practices and Lessons Learned Reusable Solutions to Recurring Problems Forms a Vocabulary for Describing Architecture
  • 3. What is Wrong With Patterns Often Not Well Understood Often Misused Often Causes Confusion Instead of Clarity Once Done Poorly Everyone is Inclined to Avoid Future Opportunities
  • 4. Steps for Using Patterns Effectively Refactor To Patterns Refactor Towards Patterns Refactor From Patterns TRAIN TRAINTRAINTRAIN Study Patterns in Context Study Patterns Outside of a Project Before Using
  • 5. Strategy Pattern Encapsulate Related Algorithms Behind a Common Interface Multiple Types Implement the Common Interface Switch Implementations by Switching Types Because Each Type Implements the Common Interface, Each Type can be Treated the Same
  • 6. Sample Strategies Plug-ins Provider Patterns Amortization Schedules in a Mortgage Calculator Multiple Views to a Single Presenter State Object for State Specific Business Logic Logic
  • 7. Strategy Code Password Complexity Validation Each Class Will Define a Validation Test Driver Process Will Loop Through the Configured Tests and Evaluate the Results