Skip to content

Design Patterns Learning Plan | 设计模式学习计划 #26

@niracler

Description

@niracler

Summary

Publish one blog post per topic every two weeks. | 每两周更新一篇关于设计模式的博客(以自己的理解)

TODOList

Step 1: Introduction to Design Patterns (1-2 weeks)

  • Understanding the Importance of Design Patterns:

    • Study the history and necessity of design patterns.
    • Write a blog discussing why design patterns are essential in software development.
  • Familiarize with the Gang of Four (GoF) Design Patterns:

    • Understand the classifications: Creational, Structural, and Behavioral.
    • Overview of the 23 GoF design patterns.
  • Select a Development Environment:

    • Set up an IDE or text editor with relevant plugins for practice.
    • Create a small project to demonstrate basic pattern usage.

Step 2: Creational Design Patterns (1-2 weeks)

  • Review Singleton and Factory Patterns:

    • Implement singleton and factory methods in a small project.
    • Discuss in a blog post, comparing their use cases and benefits.
  • Prototype and Builder Patterns:

    • Create examples illustrating prototype and builder patterns.
    • Convert an existing object creation code to use these patterns.
  • Abstract Factory Pattern:

    • Understand the benefits of the abstract factory pattern.
    • Implement a demo application that uses this pattern.

Step 3: Structural Design Patterns (1-2 weeks)

  • Adapter and Decorator Patterns:

    • Demonstrate how to use adapter and decorator patterns in a project.
    • Discuss in a blog post about enhancing existing code using these patterns.
  • Bridge and Composite Patterns:

    • Create sample projects to illustrate these structural patterns.
    • Refactor a project to use bridge or composite pattern.
  • Facade and Flyweight Patterns:

    • Implement facade and flyweight patterns in a new or existing project.
    • Analyze and write about performance improvements using these patterns.

Step 4: Behavioral Design Patterns (1-2 weeks)

  • Observer and Strategy Patterns:

    • Develop a small application incorporating observer and strategy patterns.
    • Write a blog post explaining how these patterns promote flexibility.
  • Command and Iterator Patterns:

    • Implement command and iterator patterns in relevant coding scenarios.
    • Convert existing logic using these patterns for better code management.
  • State and Visitor Patterns:

    • Create demonstrations focusing on state and visitor patterns.
    • Blog about the advantages and scenarios for using these patterns.

Books & Resources

Metadata

Metadata

Assignees

Labels

Projects

Status

Reject

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions