Design Patterns

| As presence and online training

Design Patterns are proven solution schemes that are used in the context of the development and architecture of software for recurring design problems. We provide software developers with proven design patterns, saving you a lot of time during design development.

Design_p

2-day training for software developers and architects

 

You don’t always have to reinvent the wheel!

The wheel is considered one of the first technical inventions of mankind and is a significant milestone in history. Who wants to reinvent it deals with a problem that has already been solved many millennia ago.

The same principle also applies in software engineering: proven solutions for recurring requirements can be collected, generalized and documented in a problem-oriented manner. They are called with the English term Design Patterns, thus design patterns. Design patterns prevent having to reinvent the wheel in every project. Their correct use can have a large influence on the quality of the developing software product.  In addition, design patterns contribute to the accessibility of the software: if common design patterns are used when building the system, both new software developers and architects will find their way around more quickly and will be able to collaborate.

Improving Software Design with Design Patterns

In this interactive training, participants will learn the concept and purpose of design patterns. We will give you a selection of important design patterns from our years of project experience and lead them into practical application using various methods such as case studies, exercises, lecture and discussion. The content will be partially supplemented with programming examples, but no programming exercises will be performed directly in the training. At the end of the course, participants will be able to assess the potential and usefulness of design patterns for solving design tasks and to select and apply appropriate design patterns.

Are you interested in this training?

Please call us on +49 621 595702 41, write an e-mail to training@itech-progress.com or send us a written enquiry using the contact form.

We look forward to receiving your inquiry:

8 + 13 =

Training content

  • Introduction to architecture and design patterns
  • What are design patterns and what are they for
  • Categories of design patterns
  • Distinction between architecture and design patterns and principles
  • Description of selected design principles as the basis for design patterns to improve maintainability, loose coupling, reliability, scalability, etc.
  • Description of selected architecture patterns with different focuses:
    • Data-oriented
    • service-oriented (e.g. microservices)
    • interaction-oriented (e.g. model-view-controller)
    • hierarchical (e.g. layers)
    • hardware-oriented (as required)
    • control flow (e.g. pipes and filters)
    • distribution and virtualization
  • Description of selected design patterns from the following categories:
    • creation (e.g. factory)
    • structure (e.g. adapter)
    • behavior (e.g. event sourcing, command)
    • Stability (e.g. Bulkhead)
    • Latency (e.g. Circuit Breaker)

What you should already bring with you

  • For this training, participants should already have practical experience in software development, acquired by programming different projects or systems outside of education. They should have knowledge and experience in at least one high-level programming language and know the basics in modeling, abstraction, algorithms, data structures, and UML

These training courses may also be of interest:

CPSA-A IMPROVE (Improve Architecture):

Applies design patterns to improve architecture.

CPSA-A DDD (Domain-Driven Design):

Uses patterns to align the architecture with business domains.

CPSA-A FLEX (Flexible Architectures):

Promotes the use of patterns to create flexible architectures.

CPSA-A WEB (web architectures):

Implements design patterns in a web context.

Do you want customized in-house training?

You have an entire team you want to train right away, but none of our software architecture training meets the requirements? No problem! We would be happy to work with you to create a customized in-house training course, whether for beginners or advanced users. We look forward to your request!

Write a request+49 621 595702-41