After the completion of Design Patterns Training course at myTectra, you will be able to:
1. Create great software designs that are scalable and easily maintainable
2. Understand the best use of Object Oriented concepts for creating truly OOP programs
3. Use creational design patterns in software design for class instantiation
4. Use structural design patterns for better class and object composition
5. Use behavioural patterns for better organization and communication between the objects
6. Use anti patterns for reversing the underlying causes of design problems and implementing productive solutions
7. Use refactoring to compose the methods for proper code packaging
8. Use refactoring to better organize the class responsibilities of current code
Who should go for this course?
This course is designed for software programmers and architects who are looking for ways to improve the existing designs or create better designs of software projects. This course is extremely comprehensive and addresses differing types of complex design problems and the methods to handle them.
The only prerequisite for learning Design Patterns is the knowledge of the Object Oriented Programming concepts.
Application Definition Statement:
1. Create a Retail Store complex management system for an urban development authority in a major city
2. The city's urban development authority has multiple shopping complexes across the city
3. Each complex needs to be managed by its own management entity
4. The urban development authority manages all the complexes in the city using these complex management systems
Here's a brief description of each class:
1) Store complex
The Store complex is either an applet or application. The store complex performs the creation of a set of
different stores, such as a book store, a shoe store, an electronic games store, etc.
The complex greets an arriving customer and allows the customer to shop in any of the stores.
Some of the things a customer can do at the complex are:
• Get a list of available stores
• Enter a store
• Get the list of the items for sale at the store
• Add items to the shopping cart
• Proceed to the checkout and purchase the items
Abstract superclass for a store
A possible subclass of Store
A possible subclass of Store
A possible subclass of Store
An item for sale in a Store
Name - the name of the customer
ShoppingCart - the shopping cart being used by the customer
Store - the store the customer is currently in
A shopping cart for the customer
Items - items currently in the shopping cart
What will you learn?
1. To bring together key design pattern concepts in a single application
2. To expose some common design problems that come up while designing such big software systems having communicating components
3. To present some design choices based on the data/design of the application
Why learn Design Patterns?
Object Oriented Programming is one of the biggest evolution ever happened to the software industry. Lots of languages started implementing OOP concepts thinking it would add lot of value and will improve the adaptability of the languages. While the OOP provides the concepts, programming languages still lack the essence that is needed for better software design. Design patterns fill the gap by providing solution templates for commonly occurring design problems. As any other software entity, Design Patterns is an evolving subject and it has reached its extreme maturity now by covering most of the design problems that the current software industry is facing. Practicing design patterns has helped the success ratio of software projects these days immensely. Design patterns have become a magic wand in the hands of successful software programmers and architects.
1. Introduction to Design Patterns
Learning Objectives - In this module, you will understand the basic overview of OOP concepts and implementation of DAO & Factory Pattern. (a) Object Oriented Programming concepts
(b) Unified Modeling Language
(c) Introduction to Design Patterns
(d) SOLID Principles (SRP, OCP, LSP, IS, DI)
Topics - Inheritance, Polymorphism, Interfaces, Different Member Field Attributes, Understand Design Patterns, Design Patterns using well defined UML Diagrams, Importance of Design Patterns, Introduction to different Classes of Design Patterns, Implementing DAO and Factory Pattern.
2. Creational Design Patterns
Learning Objectives - In this module, you will learn the Creational Design Pattern concepts and application using Java code examples.
Topics- Abstract Factory, Builder, Factory, Prototype, Singleton, Object Pool.
3. Structural Design Patterns
Learning Objectives - In this module, you will be able to learn Structural Design Pattern concepts and application using Java code examples.
Topics- Adapter, Bridge, Composite, Decorator, Facade, Flyweight, MVC, Front Controller, Module, Proxy.
4. Behavioural Patterns
Learning Objectives - In this module, you will learn Behavioral Design Pattern concepts and application using Java code examples.
Topics- Chain of Responsibility, Command, Iterator, Mediator, Observer, Strategy, Template Method, Visitor.
5. Concurrency Design Patterns
Learning Objectives - In this module, you will learn Concurrency Design Pattern concepts and application using Java code examples.
Topics- Active Object, Monitor Object, Half-Sync/Half-Async, Leader/Followers, Thread Specific Storage, Thread Pool, Scheduler.
6. Anti Patterns
Learning Objectives - In this module, we will explain the negative consequences that arises out by applying wrong design patterns to a problem.
Topics- Software Design Anti Patterns, Software Development Anti Patterns, Overview of Management Anti Patterns.
Learning Objectives - In this module, you will learn the basic fundamentals that need to be taken into consideration while applying the Design Pattern principles that were learnt in previous modules.
Topics- Compose Methods, Move Features between Objects, Organize Data, Conditional Expressions Simplification, Simplifying Methods, Generalization.
8. Project and Retrospection
Learning Objectives - In this module, you will be able to apply all the concepts used in previous modules to come up with scalable design for a given project.
Topics- Iterator Pattern, Abstract Factory, Observer Design Patterns.
To Learn Live Online Design Patterns Training Globally and Design Patterns Training using Class Room, ENROLL TODAY at myTectra.
|myTectra Stands for Quality Training and provides training using Experienced professionals on the Respective Technologies and who has a good teaching expertise.
|WHY DO YOU AWAIT FOR FIXED SCHEDULES ? CHOOSE MYTECTRA LEARN AT YOUR CONVENIENT TIME|
myTectra flexible batch schedules enables you to start your class at your convenient date and time.
1. All the enrolled candidates must start the class by any date within 30 days from the date of enrollment.
2. Maximum of 3 Days will be taken by myTectra to schedule the batches from the date of schedule request from the candidate.
3. Individual Focus - Maximum 5 candidates allowed per batches
4. The candidate can request any one of the batch time slot from the below list
|Batch Type||Time Slab||Hours/Day||Time Zone||Days|
|Regular Morning||6.30 AM - 9.30 AM||Anytime Maximum 2 Hrs||IST||Monday-to-Friday|
|Regular Evening||6.30 PM - 9.30 PM||Anytime Maximum 2 Hrs||IST||Monday-to-Friday|
|Week End||6.30 AM - 9.30 PM||Anytime Maximum 3 Hrs||IST||Saturday,Sunday|
|Fast Track-Morning||6.30 AM - 9.30 AM||Anytime Maximum 2 Hrs||IST||Monday-to-Saturday|
|Fast Track-Evening||6.30 PM - 9.30 PM||Anytime Maximum 2 Hrs||IST||Monday-to-Saturday|
|Customized Batch||Customized Timing||Customized Hrs||IST||Customized Days|
Note : We can schedule your batch anytime on Saturday and Sunday between 6.30 AM 9.30 PM at your convenient time
Do you have any questions ? please call us on +919019191856 or email to [email protected]