Поговорим о шаблонах проектирования, с которыми встречаемся каждый день в Android разработке(SDK, сторонние библиотеки). Но, не всегда их замечаем.

Creational

  • Builder
  • Dependency Injection
  • Singleton
  • Factory
  • Factory method

Structural

  • Adapter
  • Facade

Behavioral

  • Command
  • Observer
  • Model View Presenter
  • Model View Controller
  • Model View ViewModel

1) View Holder uses Singleton DP

2) Intent uses Factory DP

3) Adapter uses Adapter DP

4) OnClickListener, Broadcast Receiver, RxJava uses Observer DP

5) View uses Composite DP

6) Media FrameWork, Retrofit uses Facade DP

7) Dagger uses Dependency Injection DP

8) AlertDialog uses Builder DP

9) EventBus uses Command DP

10) new Fragment uses Fabric Method DP

https://www.raywenderlich.com/109843/common-design-patterns-for-android

https://refactoring.guru/ru/design-patterns/catalog