How I Learned To Apply Design Patterns

Andy Maleh
Andy MalehSenior Software Developer em Lexop
How I Learned To Apply Design Patterns,[object Object],Andy Maleh,[object Object],Obtiva Corp.,[object Object]
Outline,[object Object],What Are Design Patterns?,[object Object],Gang of Four Design Patterns,[object Object],GRASP Patterns,[object Object],Learning Process,[object Object],Example,[object Object]
What Are Design Patterns?,[object Object],Reusable solutions to common problems encountered at the software design level of abstraction.,[object Object],A pattern usually consists of:,[object Object],Name,[object Object],Problem,[object Object],Solution,[object Object],Consequences,[object Object]
Gang of Four Design Patterns,[object Object],Strategy,[object Object],State,[object Object],Decorator,[object Object],Proxy,[object Object],Abstract Factory,[object Object],Factory Method,[object Object],Chain of Responsibility,[object Object],Visitor???,[object Object]
GRASP Patterns,[object Object],General Responsibility Assignment Software Patterns,[object Object],Appeared in the book "Applying UML and Patterns" by Craig Larman,[object Object],Provide the underpinnings of Object Oriented Design,[object Object],Help explain the benefits of most Gang of Four design patterns as well as how they were arrived to ,[object Object],Contemplated collectively instead of one at a time,[object Object]
GRASP Patterns,[object Object],Creator,[object Object],Information Expert,[object Object],Controller,[object Object],Low Coupling,[object Object],High Cohesion,[object Object],Polymorphism,[object Object],Pure Fabrication,[object Object],Indirection,[object Object],Protected Variations,[object Object]
Responsibility Driven Design,[object Object],Break requirements into use-cases,[object Object],Come up with scenarios for use-cases,[object Object],Figure out responsibilities for each step in a scenario,[object Object],Assign responsibilities to objects based on Object Oriented Design principles,[object Object],NOTE: the methodology is applied vertically in thin slices when following an Agile process,[object Object]
Learning Process,[object Object],Study design patterns with genuine interest to deeply understand them and recognize when applying them would reap benefits in real-world scenarios.,[object Object],Look for every opportunity to apply them to slowly develop a sense of smell for when patterns can be applied.,[object Object],Learn to recognize when a design pattern is absolutely necessary and helpful and when it is just over-engineering.,[object Object]
Example – Order Submission,[object Object],Requirements:,[object Object],When an order is first created, it is not ready for on-line submission as it is missing required information.,[object Object],An order becomes ready for submission once filled in with required information. ,[object Object],A pending order is an order that was interrupted amidst on-line submission.,[object Object],Once an order is submitted, it cannot be edited and resubmitted.,[object Object]
Example – Order Submission,[object Object],Order State Diagram:,[object Object]
Example – Order Submission,[object Object],Design:,[object Object],Each order state is represented with a state object,[object Object],Not Ready,[object Object],Ready,[object Object],Pending,[object Object],Submitted,[object Object],View observes order to update edit and submit button enablements,[object Object]
Example – Order Submission,[object Object],Design Patterns:,[object Object],State,[object Object],Observer,[object Object]
Example – Order Submission,[object Object],GRASP Patterns:,[object Object],Polymorphism ,[object Object],Order States handling behavior polymorphically,[object Object],Indirection,[object Object],Observers provide indirect coupling to order state,[object Object],Protected Variations ,[object Object],Order is protected from state variations,[object Object],Low Coupling,[object Object],Order has low coupling to behavior variation per state,[object Object],View has low coupling to Order via observers,[object Object]
Example – Order Submission,[object Object],Benefits:,[object Object],Order behavior variation across states is clarified,[object Object],Order behavior is easily maintainable in different classes,[object Object],No complicated if/else conditionals,[object Object]
Review,[object Object],What Are Design Patterns?,[object Object],Gang of Four Design Patterns,[object Object],GRASP Patterns,[object Object],Learning Process,[object Object],Example,[object Object]
???,[object Object]
References,[object Object],Design Patterns: Elements of Reusable Object-Oriented Software,[object Object],Authors: Gang of Four,[object Object],ISBN-13: 978-0201633610,[object Object],Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development,[object Object],Author: Craig Larman,[object Object],ISBN-13: 978-0131489066,[object Object],Recommended Chapters (17, 25, 26),[object Object],Object Design: Roles, Responsibilities, and Collaborations,[object Object],Author: Rebecca Wirfs-Brock,[object Object],ISBN-13: 978-0201379433,[object Object],Elephant Carpaccio,[object Object],Author: Alistair Cockburn,[object Object],URL: http://alistair.cockburn.us/Elephant+carpaccio#discussion,[object Object]
Contact,[object Object],Presenter: Andy Maleh,[object Object],Email: andy at obtiva dot com,[object Object],Twitter: AndyMaleh,[object Object],Blog: http://andymaleh.blogspot.com,[object Object]
1 de 18

Recomendados

Let us understand design pattern por
Let us understand design patternLet us understand design pattern
Let us understand design patternMindfire Solutions
35.8K visualizações45 slides
PATTERNS05 - Guidelines for Choosing a Design Pattern por
PATTERNS05 - Guidelines for Choosing a Design PatternPATTERNS05 - Guidelines for Choosing a Design Pattern
PATTERNS05 - Guidelines for Choosing a Design PatternMichael Heron
1.6K visualizações20 slides
Design Patterns (Examples in .NET) por
Design Patterns (Examples in .NET)Design Patterns (Examples in .NET)
Design Patterns (Examples in .NET)Aniruddha Chakrabarti
68.8K visualizações147 slides
Gof design pattern por
Gof design patternGof design pattern
Gof design patternnaveen kumar
386 visualizações43 slides
Gof design patterns por
Gof design patternsGof design patterns
Gof design patternsSrikanth R Vaka
19.1K visualizações60 slides
Design Pattern For C# Part 1 por
Design Pattern For C# Part 1Design Pattern For C# Part 1
Design Pattern For C# Part 1Shahzad
7.1K visualizações19 slides

Mais conteúdo relacionado

Mais procurados

GOF Design pattern with java por
GOF Design pattern with javaGOF Design pattern with java
GOF Design pattern with javaRajiv Gupta
673 visualizações52 slides
Design patterns ppt por
Design patterns pptDesign patterns ppt
Design patterns pptAman Jain
28.7K visualizações18 slides
Lecture 5 Software Engineering and Design Design Patterns por
Lecture 5 Software Engineering and Design Design PatternsLecture 5 Software Engineering and Design Design Patterns
Lecture 5 Software Engineering and Design Design Patternsop205
8.6K visualizações23 slides
Behavioral pattern By:-Priyanka Pradhan por
Behavioral pattern By:-Priyanka PradhanBehavioral pattern By:-Priyanka Pradhan
Behavioral pattern By:-Priyanka Pradhanpriyanka pradhan
5.1K visualizações27 slides
Software Design Patterns. Part I :: Structural Patterns por
Software Design Patterns. Part I :: Structural PatternsSoftware Design Patterns. Part I :: Structural Patterns
Software Design Patterns. Part I :: Structural PatternsSergey Aganezov
691 visualizações31 slides
Patterns in Python por
Patterns in PythonPatterns in Python
Patterns in Pythondn
3.3K visualizações48 slides

Mais procurados(20)

GOF Design pattern with java por Rajiv Gupta
GOF Design pattern with javaGOF Design pattern with java
GOF Design pattern with java
Rajiv Gupta673 visualizações
Design patterns ppt por Aman Jain
Design patterns pptDesign patterns ppt
Design patterns ppt
Aman Jain28.7K visualizações
Lecture 5 Software Engineering and Design Design Patterns por op205
Lecture 5 Software Engineering and Design Design PatternsLecture 5 Software Engineering and Design Design Patterns
Lecture 5 Software Engineering and Design Design Patterns
op2058.6K visualizações
Behavioral pattern By:-Priyanka Pradhan por priyanka pradhan
Behavioral pattern By:-Priyanka PradhanBehavioral pattern By:-Priyanka Pradhan
Behavioral pattern By:-Priyanka Pradhan
priyanka pradhan5.1K visualizações
Software Design Patterns. Part I :: Structural Patterns por Sergey Aganezov
Software Design Patterns. Part I :: Structural PatternsSoftware Design Patterns. Part I :: Structural Patterns
Software Design Patterns. Part I :: Structural Patterns
Sergey Aganezov691 visualizações
Patterns in Python por dn
Patterns in PythonPatterns in Python
Patterns in Python
dn 3.3K visualizações
Design Pattern por wiradikusuma
Design PatternDesign Pattern
Design Pattern
wiradikusuma1.7K visualizações
Design pattern por Omar Isaid
Design patternDesign pattern
Design pattern
Omar Isaid550 visualizações
Software Design Patterns por Satheesh Sukumaran
Software Design PatternsSoftware Design Patterns
Software Design Patterns
Satheesh Sukumaran1.2K visualizações
Design Patterns por Anuja Arosha
Design PatternsDesign Patterns
Design Patterns
Anuja Arosha13.5K visualizações
Design pattern por Thibaut De Broca
Design patternDesign pattern
Design pattern
Thibaut De Broca3.8K visualizações
Sda 8 por AmberMughal5
Sda   8Sda   8
Sda 8
AmberMughal566 visualizações
Design patterns por abhisheksagi
Design patternsDesign patterns
Design patterns
abhisheksagi14.9K visualizações
Design Patterns por soms_1
Design PatternsDesign Patterns
Design Patterns
soms_114.2K visualizações
Design patterns difference between interview questions por Umar Ali
Design patterns   difference between interview questionsDesign patterns   difference between interview questions
Design patterns difference between interview questions
Umar Ali10.4K visualizações
Design patterns por Elyes Mejri
Design patternsDesign patterns
Design patterns
Elyes Mejri337 visualizações
Design Pattern in Software Engineering por Manish Kumar
Design Pattern in Software EngineeringDesign Pattern in Software Engineering
Design Pattern in Software Engineering
Manish Kumar7K visualizações

Similar a How I Learned To Apply Design Patterns

L03 Design Patterns por
L03 Design PatternsL03 Design Patterns
L03 Design PatternsÓlafur Andri Ragnarsson
1.8K visualizações79 slides
12266422.ppt por
12266422.ppt12266422.ppt
12266422.pptCSEC5
4 visualizações94 slides
L05 Design Patterns por
L05 Design PatternsL05 Design Patterns
L05 Design PatternsÓlafur Andri Ragnarsson
1.3K visualizações99 slides
Sfeldman performance bb_worldemea07 por
Sfeldman performance bb_worldemea07Sfeldman performance bb_worldemea07
Sfeldman performance bb_worldemea07Steve Feldman
1K visualizações41 slides
Getting Unstuck: Working with Legacy Code and Data por
Getting Unstuck: Working with Legacy Code and DataGetting Unstuck: Working with Legacy Code and Data
Getting Unstuck: Working with Legacy Code and DataCory Foy
1.9K visualizações49 slides
Code Craftsmanship Checklist por
Code Craftsmanship ChecklistCode Craftsmanship Checklist
Code Craftsmanship ChecklistRyan Polk
1K visualizações12 slides

Similar a How I Learned To Apply Design Patterns(20)

12266422.ppt por CSEC5
12266422.ppt12266422.ppt
12266422.ppt
CSEC54 visualizações
Sfeldman performance bb_worldemea07 por Steve Feldman
Sfeldman performance bb_worldemea07Sfeldman performance bb_worldemea07
Sfeldman performance bb_worldemea07
Steve Feldman1K visualizações
Getting Unstuck: Working with Legacy Code and Data por Cory Foy
Getting Unstuck: Working with Legacy Code and DataGetting Unstuck: Working with Legacy Code and Data
Getting Unstuck: Working with Legacy Code and Data
Cory Foy1.9K visualizações
Code Craftsmanship Checklist por Ryan Polk
Code Craftsmanship ChecklistCode Craftsmanship Checklist
Code Craftsmanship Checklist
Ryan Polk1K visualizações
DesignPrinciples-and-DesignPatterns por Basavaraj Patil
DesignPrinciples-and-DesignPatternsDesignPrinciples-and-DesignPatterns
DesignPrinciples-and-DesignPatterns
Basavaraj Patil1.3K visualizações
Slides chapter 3 por Hardik Patel
Slides chapter 3Slides chapter 3
Slides chapter 3
Hardik Patel366 visualizações
Slides chapter 3 por Priyanka Shetty
Slides chapter 3Slides chapter 3
Slides chapter 3
Priyanka Shetty4.1K visualizações
The Nature Of Patterns por Nick Harrison
The Nature Of PatternsThe Nature Of Patterns
The Nature Of Patterns
Nick Harrison902 visualizações
Design Patterns .Net por Hariom Shah
Design Patterns .NetDesign Patterns .Net
Design Patterns .Net
Hariom Shah1.2K visualizações
Modeling Requirements Narrated2 por Daniel Brookshier
Modeling Requirements Narrated2Modeling Requirements Narrated2
Modeling Requirements Narrated2
Daniel Brookshier1.6K visualizações
Modeling Requirements with SysML por Daniel Brookshier
Modeling Requirements with SysML Modeling Requirements with SysML
Modeling Requirements with SysML
Daniel Brookshier11.3K visualizações
B2 2006 sizing_benchmarking por Steve Feldman
B2 2006 sizing_benchmarkingB2 2006 sizing_benchmarking
B2 2006 sizing_benchmarking
Steve Feldman388 visualizações
B2 2006 sizing_benchmarking (1) por Steve Feldman
B2 2006 sizing_benchmarking (1)B2 2006 sizing_benchmarking (1)
B2 2006 sizing_benchmarking (1)
Steve Feldman281 visualizações
Chapter 1 por Sarath Srivatsan
Chapter 1Chapter 1
Chapter 1
Sarath Srivatsan661 visualizações
Object Oriented Analysis and Design with UML2 part2 por Haitham Raik
Object Oriented Analysis and Design with UML2 part2Object Oriented Analysis and Design with UML2 part2
Object Oriented Analysis and Design with UML2 part2
Haitham Raik2.1K visualizações
The OO Design Principles por Steve Zhang
The OO Design PrinciplesThe OO Design Principles
The OO Design Principles
Steve Zhang8.1K visualizações
GRASP Principles por Raheel Arif
GRASP PrinciplesGRASP Principles
GRASP Principles
Raheel Arif10.7K visualizações

Mais de Andy Maleh

Fukuoka Ruby Award 2023 - Opal por
Fukuoka Ruby Award 2023 - OpalFukuoka Ruby Award 2023 - Opal
Fukuoka Ruby Award 2023 - OpalAndy Maleh
701 visualizações15 slides
Becoming a SOC2 Ruby Shop - Montreal.rb November, 5, 2022 Ruby Meetup por
Becoming a SOC2 Ruby Shop - Montreal.rb November, 5, 2022 Ruby MeetupBecoming a SOC2 Ruby Shop - Montreal.rb November, 5, 2022 Ruby Meetup
Becoming a SOC2 Ruby Shop - Montreal.rb November, 5, 2022 Ruby MeetupAndy Maleh
26 visualizações53 slides
Montreal.rb 2022-10-05 - Glimmer DSL for SWT - Ruby Desktop Development GUI ... por
 Montreal.rb 2022-10-05 - Glimmer DSL for SWT - Ruby Desktop Development GUI ... Montreal.rb 2022-10-05 - Glimmer DSL for SWT - Ruby Desktop Development GUI ...
Montreal.rb 2022-10-05 - Glimmer DSL for SWT - Ruby Desktop Development GUI ...Andy Maleh
18 visualizações73 slides
How I Built My Code Editor in Ruby por
How I Built My Code Editor in RubyHow I Built My Code Editor in Ruby
How I Built My Code Editor in RubyAndy Maleh
638 visualizações17 slides
Ultra Light and Maintainable Rails Wizards at RailsConf 2014 por
Ultra Light and Maintainable Rails Wizards at RailsConf 2014Ultra Light and Maintainable Rails Wizards at RailsConf 2014
Ultra Light and Maintainable Rails Wizards at RailsConf 2014Andy Maleh
1.2K visualizações46 slides
RailsConf 2014 Recap at Montreal.rb by Andy Maleh por
RailsConf 2014 Recap at Montreal.rb by Andy MalehRailsConf 2014 Recap at Montreal.rb by Andy Maleh
RailsConf 2014 Recap at Montreal.rb by Andy MalehAndy Maleh
862 visualizações12 slides

Mais de Andy Maleh(17)

Fukuoka Ruby Award 2023 - Opal por Andy Maleh
Fukuoka Ruby Award 2023 - OpalFukuoka Ruby Award 2023 - Opal
Fukuoka Ruby Award 2023 - Opal
Andy Maleh701 visualizações
Becoming a SOC2 Ruby Shop - Montreal.rb November, 5, 2022 Ruby Meetup por Andy Maleh
Becoming a SOC2 Ruby Shop - Montreal.rb November, 5, 2022 Ruby MeetupBecoming a SOC2 Ruby Shop - Montreal.rb November, 5, 2022 Ruby Meetup
Becoming a SOC2 Ruby Shop - Montreal.rb November, 5, 2022 Ruby Meetup
Andy Maleh26 visualizações
Montreal.rb 2022-10-05 - Glimmer DSL for SWT - Ruby Desktop Development GUI ... por Andy Maleh
 Montreal.rb 2022-10-05 - Glimmer DSL for SWT - Ruby Desktop Development GUI ... Montreal.rb 2022-10-05 - Glimmer DSL for SWT - Ruby Desktop Development GUI ...
Montreal.rb 2022-10-05 - Glimmer DSL for SWT - Ruby Desktop Development GUI ...
Andy Maleh18 visualizações
How I Built My Code Editor in Ruby por Andy Maleh
How I Built My Code Editor in RubyHow I Built My Code Editor in Ruby
How I Built My Code Editor in Ruby
Andy Maleh638 visualizações
Ultra Light and Maintainable Rails Wizards at RailsConf 2014 por Andy Maleh
Ultra Light and Maintainable Rails Wizards at RailsConf 2014Ultra Light and Maintainable Rails Wizards at RailsConf 2014
Ultra Light and Maintainable Rails Wizards at RailsConf 2014
Andy Maleh1.2K visualizações
RailsConf 2014 Recap at Montreal.rb by Andy Maleh por Andy Maleh
RailsConf 2014 Recap at Montreal.rb by Andy MalehRailsConf 2014 Recap at Montreal.rb by Andy Maleh
RailsConf 2014 Recap at Montreal.rb by Andy Maleh
Andy Maleh862 visualizações
Ultra Light and Maintainable Wizards in Rails at Montreal.rb por Andy Maleh
Ultra Light and Maintainable Wizards in Rails at Montreal.rbUltra Light and Maintainable Wizards in Rails at Montreal.rb
Ultra Light and Maintainable Wizards in Rails at Montreal.rb
Andy Maleh12.8K visualizações
Revised Rails Engine Patterns for Montreal.rb meetup Oct 16, 2012 por Andy Maleh
Revised Rails Engine Patterns for Montreal.rb meetup Oct 16, 2012Revised Rails Engine Patterns for Montreal.rb meetup Oct 16, 2012
Revised Rails Engine Patterns for Montreal.rb meetup Oct 16, 2012
Andy Maleh1.1K visualizações
Software Craftsmanship VS Software Engineering por Andy Maleh
Software Craftsmanship VS Software EngineeringSoftware Craftsmanship VS Software Engineering
Software Craftsmanship VS Software Engineering
Andy Maleh8.4K visualizações
Rails Engine Patterns por Andy Maleh
Rails Engine PatternsRails Engine Patterns
Rails Engine Patterns
Andy Maleh14.4K visualizações
Software Craftsmanship vs Software Engineering (Lightning Talk) por Andy Maleh
Software Craftsmanship vs Software Engineering (Lightning Talk)Software Craftsmanship vs Software Engineering (Lightning Talk)
Software Craftsmanship vs Software Engineering (Lightning Talk)
Andy Maleh6.8K visualizações
Software Design Trilogy Part III - Domain Driven Design for Ruby on Rails App... por Andy Maleh
Software Design Trilogy Part III - Domain Driven Design for Ruby on Rails App...Software Design Trilogy Part III - Domain Driven Design for Ruby on Rails App...
Software Design Trilogy Part III - Domain Driven Design for Ruby on Rails App...
Andy Maleh4.1K visualizações
Software Design Trilogy Part II - Design Patterns for Rubyists por Andy Maleh
Software Design Trilogy Part II - Design Patterns for RubyistsSoftware Design Trilogy Part II - Design Patterns for Rubyists
Software Design Trilogy Part II - Design Patterns for Rubyists
Andy Maleh2.7K visualizações
Software Design Trilogy Part I - Responsibility Driven Design for Rubyists por Andy Maleh
Software Design Trilogy Part I - Responsibility Driven Design for RubyistsSoftware Design Trilogy Part I - Responsibility Driven Design for Rubyists
Software Design Trilogy Part I - Responsibility Driven Design for Rubyists
Andy Maleh1.9K visualizações
The Rails Engine That Could - In Motion por Andy Maleh
The Rails Engine That Could - In MotionThe Rails Engine That Could - In Motion
The Rails Engine That Could - In Motion
Andy Maleh1.2K visualizações
The Rails Engine That Could por Andy Maleh
The Rails Engine That CouldThe Rails Engine That Could
The Rails Engine That Could
Andy Maleh524 visualizações
Simplifying Desktop Development With Glimmer por Andy Maleh
Simplifying Desktop Development With GlimmerSimplifying Desktop Development With Glimmer
Simplifying Desktop Development With Glimmer
Andy Maleh1.1K visualizações

Último

Empathic Computing: Delivering the Potential of the Metaverse por
Empathic Computing: Delivering  the Potential of the MetaverseEmpathic Computing: Delivering  the Potential of the Metaverse
Empathic Computing: Delivering the Potential of the MetaverseMark Billinghurst
449 visualizações80 slides
Black and White Modern Science Presentation.pptx por
Black and White Modern Science Presentation.pptxBlack and White Modern Science Presentation.pptx
Black and White Modern Science Presentation.pptxmaryamkhalid2916
14 visualizações21 slides
Melek BEN MAHMOUD.pdf por
Melek BEN MAHMOUD.pdfMelek BEN MAHMOUD.pdf
Melek BEN MAHMOUD.pdfMelekBenMahmoud
14 visualizações1 slide
The Research Portal of Catalonia: Growing more (information) & more (services) por
The Research Portal of Catalonia: Growing more (information) & more (services)The Research Portal of Catalonia: Growing more (information) & more (services)
The Research Portal of Catalonia: Growing more (information) & more (services)CSUC - Consorci de Serveis Universitaris de Catalunya
66 visualizações25 slides
The details of description: Techniques, tips, and tangents on alternative tex... por
The details of description: Techniques, tips, and tangents on alternative tex...The details of description: Techniques, tips, and tangents on alternative tex...
The details of description: Techniques, tips, and tangents on alternative tex...BookNet Canada
110 visualizações24 slides
Report 2030 Digital Decade por
Report 2030 Digital DecadeReport 2030 Digital Decade
Report 2030 Digital DecadeMassimo Talia
13 visualizações41 slides

Último(20)

Empathic Computing: Delivering the Potential of the Metaverse por Mark Billinghurst
Empathic Computing: Delivering  the Potential of the MetaverseEmpathic Computing: Delivering  the Potential of the Metaverse
Empathic Computing: Delivering the Potential of the Metaverse
Mark Billinghurst449 visualizações
Black and White Modern Science Presentation.pptx por maryamkhalid2916
Black and White Modern Science Presentation.pptxBlack and White Modern Science Presentation.pptx
Black and White Modern Science Presentation.pptx
maryamkhalid291614 visualizações
Melek BEN MAHMOUD.pdf por MelekBenMahmoud
Melek BEN MAHMOUD.pdfMelek BEN MAHMOUD.pdf
Melek BEN MAHMOUD.pdf
MelekBenMahmoud14 visualizações
The details of description: Techniques, tips, and tangents on alternative tex... por BookNet Canada
The details of description: Techniques, tips, and tangents on alternative tex...The details of description: Techniques, tips, and tangents on alternative tex...
The details of description: Techniques, tips, and tangents on alternative tex...
BookNet Canada110 visualizações
Report 2030 Digital Decade por Massimo Talia
Report 2030 Digital DecadeReport 2030 Digital Decade
Report 2030 Digital Decade
Massimo Talia13 visualizações
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu... por NUS-ISS
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
Architecting CX Measurement Frameworks and Ensuring CX Metrics are fit for Pu...
NUS-ISS32 visualizações
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV por Splunk
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV
Splunk86 visualizações
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica... por NUS-ISS
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
NUS-ISS15 visualizações
Top 10 Strategic Technologies in 2024: AI and Automation por AutomationEdge Technologies
Top 10 Strategic Technologies in 2024: AI and AutomationTop 10 Strategic Technologies in 2024: AI and Automation
Top 10 Strategic Technologies in 2024: AI and Automation
AutomationEdge Technologies13 visualizações
Understanding GenAI/LLM and What is Google Offering - Felix Goh por NUS-ISS
Understanding GenAI/LLM and What is Google Offering - Felix GohUnderstanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix Goh
NUS-ISS39 visualizações
.conf Go 2023 - Data analysis as a routine por Splunk
.conf Go 2023 - Data analysis as a routine.conf Go 2023 - Data analysis as a routine
.conf Go 2023 - Data analysis as a routine
Splunk90 visualizações
Uni Systems for Power Platform.pptx por Uni Systems S.M.S.A.
Uni Systems for Power Platform.pptxUni Systems for Power Platform.pptx
Uni Systems for Power Platform.pptx
Uni Systems S.M.S.A.38 visualizações
SAP Automation Using Bar Code and FIORI.pdf por Virendra Rai, PMP
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdf
Virendra Rai, PMP19 visualizações
Voice Logger - Telephony Integration Solution at Aegis por Nirmal Sharma
Voice Logger - Telephony Integration Solution at AegisVoice Logger - Telephony Integration Solution at Aegis
Voice Logger - Telephony Integration Solution at Aegis
Nirmal Sharma17 visualizações
PharoJS - Zürich Smalltalk Group Meetup November 2023 por Noury Bouraqadi
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023
Noury Bouraqadi113 visualizações
Data-centric AI and the convergence of data and model engineering: opportunit... por Paolo Missier
Data-centric AI and the convergence of data and model engineering:opportunit...Data-centric AI and the convergence of data and model engineering:opportunit...
Data-centric AI and the convergence of data and model engineering: opportunit...
Paolo Missier29 visualizações
Roadmap to Become Experts.pptx por dscwidyatamanew
Roadmap to Become Experts.pptxRoadmap to Become Experts.pptx
Roadmap to Become Experts.pptx
dscwidyatamanew11 visualizações
Web Dev - 1 PPT.pdf por gdsczhcet
Web Dev - 1 PPT.pdfWeb Dev - 1 PPT.pdf
Web Dev - 1 PPT.pdf
gdsczhcet52 visualizações
[2023] Putting the R! in R&D.pdf por Eleanor McHugh
[2023] Putting the R! in R&D.pdf[2023] Putting the R! in R&D.pdf
[2023] Putting the R! in R&D.pdf
Eleanor McHugh38 visualizações

How I Learned To Apply Design Patterns

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.