Skip to content

Clean sample on the clean #48

Description

@michaem

Legacy part of our sample doesn't have almost clean architecture.
That's why, we had some stuck trouble with relations between presentation layer and data layer.
For example check out these files CharacterPageDataSource.kt and CharactersListViewModel.kt and you'll see.

GlobalScope.launch(CoroutineExceptionHandler { _, _ ->
            retry = {
                loadInitial(params, callback)
            }
            networkState.postValue(NetworkState.Error())
        })

DataSource shouldn't know anything about scopes.

Necessary to make sample architecture more cleaner with weak deps between presentation layer and data by implementing use case on domain layer.
It will be necessary for future, for example, to make tests functionality from Forma.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions