By Divanshu Nandwani
• Software Industry

• Programing languages

• Problem with software industry

• What are design patterns?

• Different type of design patterns
• Development, maintenance, publication of software and
  software services(such as training, documentation, and
  consulting)
• Software as a service, or SaaS – 21st century trend to
  reduce the piracy of software by providing everything on
  web rather than client side installation

• Infrastructure software, including operating systems,
  middleware, and databases
• Software that automates business processes
• A programming language is a notation for writing
  programs, which are specifications of a computation or
  algorithm
• A programming language's surface form is known as its
  syntax
• The term Semantics refers to the meaning of languages,
  as opposed to their form
• First programming language was designed in 1943, and
  latest in 2011 (Dart)
• Assembly, Algorithmic, Functional, System, Logic,
  Generic, Scripting and Object Oriented Programing
  languages
• Very less success rate
  •   1994 – 18%
  •   2001 – 28%
  •   2003 – 31%
  •   2008
       • Iterative – 71%
       • Agile – 70%
       • Traditional – 66%
       • Ad-Hoc – 62%
• A design pattern is not a finished design that can be
  transformed directly into code
• It is a description or template for how to solve a problem
  that can be used in many different situations
• The design patterns may just be a sign of some missing
  features of a given programming language
• Inappropriate use of patterns may unnecessarily increase
  complexity
• There is no single, standard format for documenting
  design patterns
• Erich Gamma, Richard Helm, Ralph Johnson and John
  Vlissides is called “Gang of Four” or GoF
• Creational patterns
  • Deal with object creation mechanisms
  • Includes 9 design patterns like Singleton & Factory method




• Structural patterns
  • Ease the design by identifying a simple way to realize
    relationships between entities
  • Includes 9 design patterns like Decorator & Façade
• Behavioral patterns
  • Identify common communication patterns between objects
  • Includes 15 design patterns like Chain of responsibility & Iterator



• Concurrency patterns
  • Deal with multi-threaded programming paradigm
  • Includes 14 design patterns like Thread pool & Lock

Design patterns

  • 1.
  • 2.
    • Software Industry •Programing languages • Problem with software industry • What are design patterns? • Different type of design patterns
  • 3.
    • Development, maintenance,publication of software and software services(such as training, documentation, and consulting) • Software as a service, or SaaS – 21st century trend to reduce the piracy of software by providing everything on web rather than client side installation • Infrastructure software, including operating systems, middleware, and databases • Software that automates business processes
  • 4.
    • A programminglanguage is a notation for writing programs, which are specifications of a computation or algorithm • A programming language's surface form is known as its syntax • The term Semantics refers to the meaning of languages, as opposed to their form • First programming language was designed in 1943, and latest in 2011 (Dart) • Assembly, Algorithmic, Functional, System, Logic, Generic, Scripting and Object Oriented Programing languages
  • 5.
    • Very lesssuccess rate • 1994 – 18% • 2001 – 28% • 2003 – 31% • 2008 • Iterative – 71% • Agile – 70% • Traditional – 66% • Ad-Hoc – 62%
  • 6.
    • A designpattern is not a finished design that can be transformed directly into code • It is a description or template for how to solve a problem that can be used in many different situations • The design patterns may just be a sign of some missing features of a given programming language • Inappropriate use of patterns may unnecessarily increase complexity • There is no single, standard format for documenting design patterns • Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides is called “Gang of Four” or GoF
  • 7.
    • Creational patterns • Deal with object creation mechanisms • Includes 9 design patterns like Singleton & Factory method • Structural patterns • Ease the design by identifying a simple way to realize relationships between entities • Includes 9 design patterns like Decorator & Façade
  • 8.
    • Behavioral patterns • Identify common communication patterns between objects • Includes 15 design patterns like Chain of responsibility & Iterator • Concurrency patterns • Deal with multi-threaded programming paradigm • Includes 14 design patterns like Thread pool & Lock