Skip to content

Latest commit

 

History

History
82 lines (58 loc) · 8.08 KB

File metadata and controls

82 lines (58 loc) · 8.08 KB

Java Low Level Design (java-lld)

Overview

In software engineering, a design pattern is a general repeatable solution to a commonly occurring problem in software design. A design pattern isn't 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.

  • Creational design patterns - these patterns are all about creating objects. Io other words this design patterns are used for instantiation of objects.
  • Structural design patterns - these design patterns for composition of objects and classes. With Structural design patterns use inheritnace to compose interfaces.
  • Behavioral design patterns - these patterns all about communication of objects of classes. BDPs conserned mostly about communication of objects of spesific classes.
Creational Patterns Structural Patterns Behavioral Patterns Other Useful Patterns
Abstract Factory Adapter Chain of responsibility Combinator
Builder Bridge Command
Factory Method Composite Iterator
Object Pool Decorator Mediator
Prototype Facade Memento
Singleton flyweight Null Object
Private Class Data Observer
Proxy State
Strategy
Template Method
Visitor

Projects practice:

Games:

Multi-Threading and Concurrency

Stream API examples:

Top Design patterns:

Java Low Level Design *Source: amigoscode.com

Related Resources

Here you may find related documentations and video lessons which would be useful for you to gain new knowledge.

Important PDFs/Books 📚

No Name Resource Page Status
1. Head First Design Patterns Head First Design Patterns 677
2. Elements of Reusable Object-Oriented Software Elements of Reusable Object-Oriented Software 417 📖
3. Dive into Design Patterns Dive into Design Patterns 410 📖
4. Head First Object-Oriented Analysis and Design Head First Object-Oriented Analysis and Design 603
5. Patterns of Enterprise Application Architecture Patterns of Enterprise Application Architecture 389