-
Урок 1.
00:02:45
Pra quem é esse curso?
-
Урок 2.
00:17:31
Configurando o Git
-
Урок 3.
00:01:05
Ajuste da aula anterior
-
Урок 4.
00:14:53
Dica para o treinamento
-
Урок 5.
00:16:15
BDD, UseCase e Diagrama de Dependências
-
Урок 6.
00:05:43
Criando o Authentication UseCase
-
Урок 7.
00:18:03
Criando o RemoteAuthentication e integrando com o HttpClient
-
Урок 8.
00:21:40
Testando o body do request
-
Урок 9.
00:16:52
Testando casos de exceção do HttpClient
-
Урок 10.
00:27:46
Testando caso de sucesso
-
Урок 11.
00:22:59
Criando o HttpAdapter e testando o post
-
Урок 12.
00:17:11
Testando casos de sucesso
-
Урок 13.
00:21:25
Testando casos de erro
-
Урок 14.
00:13:51
Criando os Widgets da tela de Login
-
Урок 15.
00:21:17
Criando estilo para os Widgets
-
Урок 16.
00:08:32
Criando Ãcone para o aplicativo
-
Урок 17.
00:27:14
MVC vs MVVM vs MVP vs BLOC
-
Урок 18.
00:17:11
Testando estado inicial do LoginPage
-
Урок 19.
00:37:47
Testando estados do formulário no LoginPage
-
Урок 20.
00:26:03
Testando estados da ação de fazer login
-
Урок 21.
00:19:12
Reutilizando o presenter nos Widgets com Provider
-
Урок 22.
00:29:18
Criando o LoginPresenter com StreamController
-
Урок 23.
00:25:57
Integrando o StreamLoginPresenter com o Validation
-
Урок 24.
00:28:54
Integrando o StreamLoginPresenter com o Authentication
-
Урок 25.
00:15:20
Criando o RequiredFieldValidation
-
Урок 26.
00:13:02
Criando o EmailValidation
-
Урок 27.
00:23:13
Criando o ValidationComposite
-
Урок 28.
00:27:20
Fazendo a composição da tela de Login
-
Урок 29.
00:15:49
Aplicando o Design Pattern Builder
-
Урок 30.
00:02:18
Tornando o construtor do ValidationBuilder privado
-
Урок 31.
00:42:09
Refatorando para usar o GetX como gerenciador de estado
-
Урок 32.
00:12:49
Criando caso de uso para gravar o token de acesso no cache
-
Урок 33.
00:25:43
Criando o LocalSaveCurrentAccount
-
Урок 34.
00:19:46
Criando o LocalStorageAdapter e integrando com o Flutter Secure Storage
-
Урок 35.
00:35:33
Integrando o LoginPresenter ao SaveCurrentAccount
-
Урок 36.
00:08:30
Criando o caso de uso para carregar os dados da conta do usuário
-
Урок 37.
00:23:55
Criando o LocalLoadCurrentAccount
-
Урок 38.
00:12:26
Integrando o FetchSecureCacheStorage ao LocalStorageAdapter
-
Урок 39.
00:23:52
Criando a tela de Splash
-
Урок 40.
00:20:34
Criando o Presenter para o Splash Page com GetX
-
Урок 41.
00:12:04
Fazendo a composição do Splash Page
-
Урок 42.
00:18:46
Aplicando i18n
-
Урок 43.
00:46:44
Refatorando o projeto para centralizar as traduções na UI Layer
-
Урок 44.
00:07:25
Criando o UseCase do AddAccount
-
Урок 45.
00:26:42
Testando a implementação do AddAccount UseCase voltado para API
-
Урок 46.
00:12:20
Testando o estado inicial do SignUp Page
-
Урок 47.
00:22:19
Testando a validação do formulário do SignUp Page
-
Урок 48.
00:18:32
Finalizando os testes do SignUp Page
-
Урок 49.
00:12:18
Testando o Validation no SignUpPresenter
-
Урок 50.
00:28:53
Testando o AddAccount no SignUpPresenter
-
Урок 51.
00:13:44
Testando navegação entre as telas de Login e SignUp
-
Урок 52.
00:14:08
Criando o MinLengthValidation
-
Урок 53.
00:06:14
Criando o CompareFieldsValidation
-
Урок 54.
00:30:34
Refatorando o projeto por conta de uma modelagem errada
-
Урок 55.
00:12:24
Fazendo a composição do SignUp
-
Урок 56.
00:08:51
Correção de bug encontrado
-
Урок 57.
00:11:26
Criando o LoadSurveys UseCase
-
Урок 58.
00:08:57
Testando a integração do RemoteLoadSurveys com o HttpClient
-
Урок 59.
00:29:00
Testando casos de sucesso da API
-
Урок 60.
00:10:14
Testando casos de exceção da API
-
Урок 61.
00:14:14
Implementando o Get no HttpAdapter
-
Урок 62.
00:17:10
Criando a interface da tela de Surveys
-
Урок 63.
00:21:33
Testando o estado inicial e a stream de loading
-
Урок 64.
00:19:42
Testando a stream de dados da enquete
-
Урок 65.
00:06:28
Testando dados corretos das enquetes
-
Урок 66.
00:32:48
Criando o GetxSurveysPresenter e testando suas streams
-
Урок 67.
00:03:10
Movendo o GetxSurveysPresenter para produção
-
Урок 68.
00:15:24
Fazendo a composição do Surveys Page
-
Урок 69.
00:11:33
Adicionando headers no HttpClient
-
Урок 70.
00:35:49
Aplicando o Design Pattern Decorator
-
Урок 71.
00:08:07
Alterando a composição para usar o Decorator
-
Урок 72.
00:08:55
Correção de bug encontrado
-
Урок 73.
00:10:47
Criando os requerimentos para listar enquetes offline
-
Урок 74.
00:21:09
Testando o caso de sucesso do LocalLoadSurveys
-
Урок 75.
00:17:20
Testando casos de erro do LoadLocalSurveys
-
Урок 76.
00:20:30
Fazendo o LocalLoadSurveys implementar o Validate
-
Урок 77.
00:21:00
Fazendo o LocalLoadSurveys implementar o Save
-
Урок 78.
00:08:21
Separando a implementação do cache e do cache seguro
-
Урок 79.
00:16:32
Testando o Save do LocalStorageAdapter
-
Урок 80.
00:07:32
Testando o Delete do LocalStorageAdapter
-
Урок 81.
00:09:51
Testando o Fetch do LocalStorageAdapter
-
Урок 82.
00:08:11
Movendo o ValidationComposite para o Main Layer
-
Урок 83.
00:14:47
Testando caso de sucesso do Composite
-
Урок 84.
00:17:00
Testando casos de exceção do Composite
-
Урок 85.
00:21:03
Fazendo a composição com o novo Composite
-
Урок 86.
00:12:49
Criando o caso de uso do LoadSurveyResult
-
Урок 87.
00:27:59
Criando a implementação do LoadSurveyResult com API
-
Урок 88.
00:05:32
Criando a estrutura de arquivos
-
Урок 89.
00:19:39
Criando o layout da tela de resultado da enquete
-
Урок 90.
00:17:56
Testando o estado inicial e a stream de loading
-
Урок 91.
00:19:39
Testando casos de erro
-
Урок 92.
00:25:15
Testando caso de sucesso
-
Урок 93.
00:11:34
Refatorando o código
-
Урок 94.
00:19:30
Criando o GetxSurveyResultPresenter e testando suas streams
-
Урок 95.
00:15:51
Adicionando link entre Survey e SurveyResult
-
Урок 96.
00:11:30
Criando a composição da tela de resultado da enquete
-
Урок 97.
00:24:34
Limpando o token de acesso do Cache no erro 403
-
Урок 98.
00:23:03
Deslogando o usuário em caso de acesso negado
-
Урок 99.
00:13:34
Aplicando o DRY com o uso de Mixins nos Presenters
-
Урок 100.
00:18:58
Aplicando o DRY com o uso de Mixins nos Widgets
-
Урок 101.
00:05:21
Evitando Memory Leaks
-
Урок 102.
00:28:34
Implementando o método de Load
-
Урок 103.
00:06:17
Implementando o método de Validate
-
Урок 104.
00:18:49
Implementando o método de Save
-
Урок 105.
00:21:39
Aplicando o Design Pattern Composite 1/2
-
Урок 106.
00:21:27
Aplicando o Design Pattern Composite 2/2
-
Урок 107.
00:09:42
Alterando a composição do SurveyResult para usar o Composite
-
Урок 108.
00:05:51
Ajuste no save do LocalLoadSurveyResult
-
Урок 109.
00:07:18
Domain Layer
-
Урок 110.
00:18:31
Data Layer
-
Урок 111.
00:05:26
Infra Layer
-
Урок 112.
00:10:30
UI Layer
-
Урок 113.
00:16:40
Presentation Layer
-
Урок 114.
00:08:21
Main Layer
-
Урок 115.
00:21:51
Correção de bugs encontrados
-
Урок 116.
00:15:38
Fazendo reload de uma tela após o evento de back do navigation
-
Урок 117.
00:15:30
Simplificando os testes de UI com helpers
-
Урок 118.
00:30:05
Refatorando os Mocks 1/3
-
Урок 119.
00:21:01
Refatorando os Mocks 2/3
-
Урок 120.
00:08:11
Refatorando os Mocks 3/3
-
Урок 121.
00:13:37
Migrando para a versão nova do Flutter com FVM
-
Урок 122.
00:19:23
Migrando mockito para mocktail
-
Урок 123.
00:24:24
Removendo meta.dart
-
Урок 124.
00:18:04
Corrigindo erros da pasta lib
-
Урок 125.
00:08:17
Corrigindo erros da pasta test
-
Урок 126.
00:27:11
Refatorando os mocks
-
Урок 127.
00:15:47
Corrigindo bug do mocktail que retorna null pra todos os mocks (até para void)
-
Урок 128.
00:19:31
Extraindo mocks do Data Layer
-
Урок 129.
00:26:31
Extraindo mocks do Infra Layer
-
Урок 130.
00:30:29
Extraindo mocks do Main Layer
-
Урок 131.
00:30:37
Extraindo mocks do Presentation Layer
-
Урок 132.
00:35:54
Extraindo mocks do UI Layer
-
Урок 133.
00:07:34
Ajustes finais