Slide 1

Slide 1 text

1

Slide 2

Slide 2 text

Agenda › LINE SHOPPING App Introduction › Clean Architecture Data Flow › Feature Implementation 2

Slide 3

Slide 3 text

› Developed with Flutter › Structured with Clean Architecture › Improve Testability & Maintainability LINE SHOPPING App 3

Slide 4

Slide 4 text

Recently Viewed View Store 4 LINE SHOPPING App Introduction

Slide 5

Slide 5 text

Clean Architecture Data Flow BrowsingHistoryWidget Merchant BrowsingHistoryBloc GetBrowsing HistoryUseCase BrowsingHistory Repository BrowsingHistory ApiService ApiClient 5 Add Event

Slide 6

Slide 6 text

Clean Architecture Data Flow BrowsingHistoryWidget Merchant BrowsingHistoryBloc GetBrowsing HistoryUseCase BrowsingHistory Repository BrowsingHistory ApiService ApiClient 6

Slide 7

Slide 7 text

Clean Architecture Data Flow BrowsingHistoryWidget Merchant BrowsingHistoryBloc GetBrowsing HistoryUseCase BrowsingHistory Repository BrowsingHistory ApiService ApiClient 7

Slide 8

Slide 8 text

Clean Architecture Data Flow BrowsingHistoryWidget Merchant BrowsingHistoryBloc GetBrowsing HistoryUseCase BrowsingHistory Repository BrowsingHistory ApiService ApiClient 8 Dependency Inversion

Slide 9

Slide 9 text

Clean Architecture Data Flow BrowsingHistoryWidget Merchant BrowsingHistoryBloc GetBrowsing HistoryUseCase BrowsingHistory Repository BrowsingHistory ApiService ApiClient 9

Slide 10

Slide 10 text

Clean Architecture Data Flow BrowsingHistoryWidget Merchant BrowsingHistoryBloc GetBrowsing HistoryUseCase BrowsingHistory Repository BrowsingHistory ApiService ApiClient 10

Slide 11

Slide 11 text

Clean Architecture Data Flow BrowsingHistoryWidget Merchant BrowsingHistoryBloc GetBrowsing HistoryUseCase BrowsingHistory Repository BrowsingHistory ApiService ApiClient 11 Return “MerchantDto”

Slide 12

Slide 12 text

Clean Architecture Data Flow BrowsingHistoryWidget Merchant BrowsingHistoryBloc GetBrowsing HistoryUseCase BrowsingHistory Repository BrowsingHistory ApiService ApiClient 12 Return “Merchant”

Slide 13

Slide 13 text

Clean Architecture Data Flow BrowsingHistoryWidget Merchant BrowsingHistoryBloc GetBrowsing HistoryUseCase BrowsingHistory Repository BrowsingHistory ApiService ApiClient 13

Slide 14

Slide 14 text

Clean Architecture Data Flow BrowsingHistoryWidget Merchant BrowsingHistoryBloc GetBrowsing HistoryUseCase BrowsingHistory Repository BrowsingHistory ApiService ApiClient 14 Emit State

Slide 15

Slide 15 text

ApiClient Frameworks & Drivers ApiClient 15

Slide 16

Slide 16 text

BrowsingHistoryApiService Interface Adapters BrowsingHistory ApiService 16

Slide 17

Slide 17 text

BrowsingHistoryApiService Interface Adapters BrowsingHistory ApiService 17 BrowsingHistoryApi ServiceImpl

Slide 18

Slide 18 text

BrowsingHistoryRepository Use Cases BrowsingHistory Repository 18

Slide 19

Slide 19 text

BrowsingHistoryRepository Use Cases 19 BrowsingHistory Repository BrowsingHistory RepositoryImpl

Slide 20

Slide 20 text

Merchant Entities Merchant 20

Slide 21

Slide 21 text

GetBrowsing HistoryUseCase GetBrowsingHistoryUseCase Use Cases 21

Slide 22

Slide 22 text

BrowsingHistoryBloc Interface Adapters Browsing HistoryBloc 22

Slide 23

Slide 23 text

BrowsingHistoryBloc Interface Adapters Browsing HistoryBloc 23

Slide 24

Slide 24 text

BrowsingHistoryWidget Frameworks & Drivers BrowsingHistory Widget 24

Slide 25

Slide 25 text

Summary Testability & Maintainability BLoC State Management Dependency Rule Interface Adapters Entities Use Cases Frameworks & Drivers 25

Slide 26

Slide 26 text

Thank you 26