Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Flutter Advanced Course - Clean Architecture With MVVM, а также все другие курсы, прямо сейчас!
Премиум
  • Урок 1. 00:01:08
    About the Course
  • Урок 2. 00:04:22
    Content of the Course
  • Урок 3. 00:00:43
    Who Can Attend this Course?
  • Урок 4. 00:13:37
    Lecture 4 - Creating Application Class
  • Урок 5. 00:11:48
    Lecture 5 - Creating Colors Manager
  • Урок 6. 00:10:23
    Lecture 6 - Creating Fonts Manager
  • Урок 7. 00:03:38
    Lecture 7 - Creating Values Manager
  • Урок 8. 00:10:06
    Lecture 8 - Creating Styles Manager
  • Урок 9. 00:06:05
    Lecture 9 - Creating Theme Manager
  • Урок 10. 00:02:14
    Lecture 10 - Adding Card Theme
  • Урок 11. 00:03:57
    Lecture 11 - Adding App Bar Theme
  • Урок 12. 00:06:07
    Lecture 12 - Adding Button Theme
  • Урок 13. 00:05:31
    Lecture 13 - Adding Text Theme
  • Урок 14. 00:11:33
    Lecture 14 - Adding Text Form Field Theme
  • Урок 15. 00:09:25
    Lecture 15 - Start Adding Routes Manager
  • Урок 16. 00:07:48
    Lecture 16 - Finish Adding Routes Manager
  • Урок 17. 00:03:17
    Lecture 17 - Adding Strings Manager
  • Урок 18. 00:07:07
    Lecture 18 - How to Select Image Sizes in Flutter?
  • Урок 19. 00:06:28
    Lecture 19 - Best Way to Add Icons to Flutter Project
  • Урок 20. 00:08:24
    Lecture 20 - Start Splash Screen
  • Урок 21. 00:06:14
    Lecture 21 - Adding Timer to Splash Screen
  • Урок 22. 00:15:07
    Lec-22 Change App Name,Laucher Icon and Remove White Screen at Start for Android
  • Урок 23. 00:08:27
    Lec-23 Change App Name,Laucher Icon and Remove White Screen at Start for Ios #1
  • Урок 24. 00:05:19
    Lec-24 Change App Name,Laucher Icon and Remove White Screen at Start for Ios #2
  • Урок 25. 00:08:48
    Lecture 25 - Adding Assets for Onboarding Screen
  • Урок 26. 00:11:15
    Lecture 26 - Implementation Onboarding Screen Part1
  • Урок 27. 00:08:15
    Lecture 27- Implementation Onboarding Screen Part2
  • Урок 28. 00:09:23
    Lecture 28 - Implementation of Onboarding Screen Part3
  • Урок 29. 00:15:17
    Lecture 29 - Implementation of Onboarding Screen Part4
  • Урок 30. 00:10:11
    Lecture 30 - Implementation of Onboarding Screen Part5
  • Урок 31. 00:03:12
    Lecture 31 - Implementation Onboarding Screen Part6
  • Урок 32. 00:01:45
    Lecture 32 - Surprise
  • Урок 33. 00:04:57
    Lecture 33 - What is MVVM?
  • Урок 34. 00:05:04
    Lecture 34 - Creating Base ViewModel
  • Урок 35. 00:09:25
    Lecture 35 - Creating Onboarding Screen ViewModel
  • Урок 36. 00:03:02
    Lecture 36 - What is Stream Controller?
  • Урок 37. 00:07:01
    Lecture 37 - Adding Stream Controller to Onboarding Viewmodel
  • Урок 38. 00:11:42
    Lecture 38 - Onboarding Viewmodel Logic Implemenation
  • Урок 39. 00:03:26
    Lecture 39: Continue Onboarding Viewmodel Logic Implemenation
  • Урок 40. 00:05:19
    Lecture 40 - Binding Onboarding Viewmodel to View
  • Урок 41. 00:11:54
    Lecture 41 - How to Recive Data in View From Viewmodel?
  • Урок 42. 00:04:53
    Lecture 42 - What is Clean Architecture?
  • Урок 43. 00:09:14
    Lecture 43 - Creating Mock APIs
  • Урок 44. 00:04:52
    Lecture 44 - Data Layer - Adding Dependencies for network layer
  • Урок 45. 00:09:55
    Lecture 45 - Data Layer - Adding APIs Responses
  • Урок 46. 00:12:58
    Lecture 46 - Data Layer - Json Serialization
  • Урок 47. 00:09:13
    Lecture 47 - Data Layer - Add API Service Client (Retrofit)
  • Урок 48. 00:04:20
    Lecture 48 - Domain Layer - Creating Models
  • Урок 49. 00:04:39
    Lecture 49 - Application Layer - Creating Extensions Functions
  • Урок 50. 00:11:50
    Lecture 50 - Data Layer - Creating Mappers and Applying Null Safety
  • Урок 51. 00:02:29
    Lecture 51 - Either Conecpt
  • Урок 52. 00:07:16
    Lecture 52 - Domain Layer - Adding Repository, Request and Failure
  • Урок 53. 00:06:47
    Lecture 53 - Data Layer - Remote Data Source
  • Урок 54. 00:06:15
    Lecture 54 - Data Layer - Adding Netowrk Data Checker
  • Урок 55. 00:12:36
    Lecture 55 - Data Layer - Adding Repository Implementer
  • Урок 56. 00:05:23
    Lecture 56 - Data Layer - Adding Data Source Enum
  • Урок 57. 00:06:27
    Lecture 57 - Data Layer - Adding Responses Codes
  • Урок 58. 00:03:58
    Lecture 58 - Data Layer - Adding Responses Messages
  • Урок 59. 00:06:07
    Lecture 59 - Data layer - Adding Extension on Data Sources
  • Урок 60. 00:14:20
    Lecture 60 - Data Layer - Adding Error Handler Class
  • Урок 61. 00:07:11
    Lecture 61 - Data Layer - Applying ErrorHandler on Repository Implementer
  • Урок 62. 00:08:51
    Lecture 62 - Data Layer - Adding Dio Factory
  • Урок 63. 00:05:16
    Lecture 63 - Data Layer - Adding Dio Logger Interceptor
  • Урок 64. 00:04:09
    Lecture 64 - Presentation Layer - Adding Language Manager
  • Урок 65. 00:06:42
    Lecture 65 - Application Layer - Adding Application Preferences
  • Урок 66. 00:02:17
    Lecture 66 - Update Dio Factory with App Preferences
  • Урок 67. 00:04:38
    Lecture 67 - Domain Layer - Adding Base UseCase
  • Урок 68. 00:04:26
    Lecture 68 - Domain Layer - Adding Login UseCase
  • Урок 69. 00:06:35
    Lecture 69 - Domain Layer - Getting Device Info Part 1
  • Урок 70. 00:03:57
    Lecture 70 - Domain Layer - Getting Device Info Part 2
  • Урок 71. 00:09:19
    Lecture 71 - Adding Login Viewmodel
  • Урок 72. 00:07:31
    Lecture 72 - Adding Streams to Login ViewModel
  • Урок 73. 00:09:03
    Lecture 73 - Adding Data Classes to Login ViewModel
  • Урок 74. 00:01:57
    Lecture 74 - Usage of Data Classes
  • Урок 75. 00:05:19
    Lecture 75 - Adding Login UseCase to Login ViewModel
  • Урок 76. 00:05:56
    Lecture 76 - Binding Login ViewModel to Login View
  • Урок 77. 00:13:23
    Lecture 77 - Login View UI
  • Урок 78. 00:07:41
    Lecture 78 - Login View UI Continue
  • Урок 79. 00:03:44
    Lecture 79 - Finalising Login UI
  • Урок 80. 00:10:36
    Lecture 80 - Adding Stream Controller For Login Button
  • Урок 81. 00:05:15
    Lecture 81 - Testing Login UI Implementation
  • Урок 82. 00:07:01
    Lecture 82 - Adding Forgot Pasword and Register Texts
  • Урок 83. 00:10:53
    Lecture 83 - Adding Dependency Injection App Module
  • Урок 84. 00:10:14
    Lecture 84 - Add dependency injection Instances
  • Урок 85. 00:06:00
    Lecture 85 - Add Dependency Injection Login Module
  • Урок 86. 00:02:41
    Lecture 86 - How to Use Instance of Dependency Injection?
  • Урок 87. 00:03:52
    Lecture 87 - Make App Makes HTTP Request (NOT only HTTPs)
  • Урок 88. 00:07:10
    Lecture 88 - Testing Login API
  • Урок 89. 00:02:05
    Lecture 89 - Showing Popup State Renderer
  • Урок 90. 00:03:00
    Lecture 90 - Showing Full Screen State Renderer
  • Урок 91. 00:12:30
    Lecture 91 - Adding State Renderer Implementation
  • Урок 92. 00:05:52
    Lecture 92 - Adding State Renderer Implementation Part 2
  • Урок 93. 00:08:06
    Lecture 93 - Adding State Renderer Implementation Part 3
  • Урок 94. 00:06:26
    Lecture 94 - Adding State Renderer Implementation Part 4
  • Урок 95. 00:07:51
    Lecture 95 - Adding State Renderer Implementation Part 5
  • Урок 96. 00:05:13
    Lecture 96 - Adding State Renderer Implementation Part 6
  • Урок 97. 00:07:05
    Lecture 97 - Adding State Renderer Implementation Part 7
  • Урок 98. 00:05:31
    Lecture 98 - Applying State Renderer - Loading State
  • Урок 99. 00:04:32
    Lecture 99 - Applying State Renderer - Error State - Empty State - Content State
  • Урок 100. 00:05:01
    Lecture 100 - Adding Extension on State Renderer implementer
  • Урок 101. 00:08:42
    Lecture 101 -Adding Implementation for Loading State Case
  • Урок 102. 00:02:59
    Lect 102 Adding Implementation for (Error State-Empty State-Content State) Cases
  • Урок 103. 00:05:27
    Lecture 103 - Handling showing many popup dialogs
  • Урок 104. 00:07:55
    Lecture 104 - Adding Input Stream Controller Inside Base ViewModel
  • Урок 105. 00:06:06
    Lecture 105 - Updating Login View with Flow State Controller
  • Урок 106. 00:06:30
    Lecture 106 - Updating Login ViewModel with Flow State Controller
  • Урок 107. 00:02:20
    Lecture 107 - Testing State Renderer Implementation
  • Урок 108. 00:02:22
    Lecture 108 - Updating Login API in Mock Stub
  • Урок 109. 00:06:58
    Lecture 109 - Handling Login Success Result to Go to Main Screen
  • Урок 110. 00:11:33
    Lecture 110 - Updating Routes Navigation with App Prefernces
  • Урок 111. 00:01:51
    Lecture 111 -Testing Navigation from Splash Screen
  • Урок 112. 00:04:22
    Lecture 112 -Assignment #1 Requirement and Creating Mock API
  • Урок 113. 00:05:30
    Lecture 113 -Assignment #1 Solution Keys
  • Урок 114. 00:03:56
    Lecture 114 -Getting Assigment #1 source code from githup
  • Урок 115. 00:01:44
    Lecture 115 -Assignment Requirement
  • Урок 116. 00:02:54
    Lecture 116 -Assignment #2 Solution Keys
  • Урок 117. 00:01:10
    Lecture 117 -Creating Pull Request for Assigment #2 Solution
  • Урок 118. 00:05:34
    Lecture 118 - Createing Mock API for Register Screen
  • Урок 119. 00:05:35
    Lecture 119 - Adding Register API Interface and Repository
  • Урок 120. 00:06:30
    Lec-120 Add Register API Call in Repository Impl, Remote Data Source and Usecase
  • Урок 121. 00:05:21
    Lecture 121 - Adding Stream Controllers to Register ViewModel
  • Урок 122. 00:08:52
    Lecture 122- Adding Register ViewModel Input and Output
  • Урок 123. 00:08:07
    Lecture 123 - Implementations of Register ViewModel Inputs and Outputs
  • Урок 124. 00:07:17
    Lecture 124 - Adding Streams Implementations in Register ViewModel
  • Урок 125. 00:03:44
    Lecture 125 - Adding Register View Object Data Class
  • Урок 126. 00:10:55
    Updating Register View Object Data Class
  • Урок 127. 00:08:10
    Lecture 127 - Applying Validation to Register ViewModel
  • Урок 128. 00:04:22
    Lecture 128 - Add Register API Implementation Inside ViewModel
  • Урок 129. 00:08:30
    Lecture 129 -Binding Register ViewModel to View and Adding Dependencey Injection
  • Урок 130. 00:04:19
    Lecture 130- Adding Stream Builders Inside Register View
  • Урок 131. 00:04:58
    Lecture 131- Adding UI for Register Screen
  • Урок 132. 00:13:08
    Lecture 132- Adding UI for Register Screen Part 2
  • Урок 133. 00:04:30
    Lecture 133- Adding UI for Register Screen Part 3
  • Урок 134. 00:12:22
    Lecture 134- Adding UI for Register Screen Part 4
  • Урок 135. 00:10:05
    Lecture 135- Adding UI for Register Screen Part 5
  • Урок 136. 00:02:56
    Lecture 136- Adding UI for Register Screen Part 6
  • Урок 137. 00:08:02
    Lecture 137- Fixing UI Implementation for Register Screen
  • Урок 138. 00:04:12
    Lecture 138- Testing Register Flow
  • Урок 139. 00:11:42
    Lecture 139- Finalising Register Flow
  • Урок 140. 00:03:25
    Lecture 140- Navigate to Main Screen
  • Урок 141. 00:10:23
    Lecture 141- Adding Pages Inside Main View
  • Урок 142. 00:07:09
    Lecture 142- Finalising Adding Pages inside Main View
  • Урок 143. 00:02:39
    Lecture 143 - Testing Pages Inside Main View
  • Урок 144. 00:06:08
    Lecture 144 - Creating Mock API for Home Screen
  • Урок 145. 00:10:02
    Lecture 145 - Adding Home API Responses
  • Урок 146. 00:04:21
    Lecture 146 - Adding Home API Models
  • Урок 147. 00:04:47
    Lecture 147 - Adding Mappers for Home APIs
  • Урок 148. 00:08:30
    Lecture 148 - Adding Mappers for Home API Continue
  • Урок 149. 00:03:19
    Lecture 149 - Adding Home API Inside App Service Client
  • Урок 150. 00:03:21
    Lecture 150 - Updating Remote Data Source and Repository with Home API
  • Урок 151. 00:02:13
    Lecture 151 - Adding Home UseCase
  • Урок 152. 00:06:24
    Lecture 152 - Adding Home ViewModel and Rxdart
  • Урок 153. 00:05:32
    Lecture 153 - Add Home ViewModel Inputs and Outputs
  • Урок 154. 00:07:46
    Lecture 154 - Adding Implementation of Home API in ViewModel
  • Урок 155. 00:04:08
    Lec 155 add Home View, Adding Dependency Injection and Binding View to ViewModel
  • Урок 156. 00:11:03
    Lecture 156 - Home View UI
  • Урок 157. 00:13:06
    Lecture 157 - Adding Banner Carousel Widget
  • Урок 158. 00:11:37
    Lecture 158 - Adding Services Widget
  • Урок 159. 00:11:47
    Lecture 159 - Adding Stores Widget
  • Урок 160. 00:07:12
    Lecture 160 - Testing Home Implementation and Fixing Issues
  • Урок 161. 00:05:32
    Lecture 161 - Assignment Requirement
  • Урок 162. 00:03:01
    Lecture 162 - Assignment Solution Keys
  • Урок 163. 00:10:44
    Lecture 163 - Start Caching Implementation
  • Урок 164. 00:10:21
    Lecture 164 - Adding Retrieving Caching Data from Local Data Source
  • Урок 165. 00:07:21
    Lecture 165 - Updating Repository Implementer With Local Data Source
  • Урок 166. 00:02:11
    Lecture 166 - Testing Caching on Home Page
  • Урок 167. 00:03:46
    Lecture 167 - Assignment Requirement - Creating Mock API
  • Урок 168. 00:03:50
    Lecture 168 - Assignment Solution Keys
  • Урок 169. 00:12:34
    Lecture 169 - Adding UI of Settings Screen
  • Урок 170. 00:08:52
    Lecture 170 - Finalising Setting Screen
  • Урок 171. 00:05:27
    Lecture 171 - Start Implementing Localisation
  • Урок 172. 00:09:04
    Lecture 172 - Updating Application Strings
  • Урок 173. 00:15:51
    Lecture 173 - Continue Updating Application Strings
  • Урок 174. 00:08:23
    Lecture 174 - Updating Application Preferences with langauge changes
  • Урок 175. 00:03:03
    Lecture 175 - Update Main function with Localisation
  • Урок 176. 00:04:22
    Lecture 176 - Update Application Class and Settings Screen with localisation
  • Урок 177. 00:11:21
    Lecture 177 - Testing Localisation
  • Урок 178. 00:03:28
    Lecture 178 - How to get source code from github?
  • Урок 179. 00:15:28
    Lecture 179 - How to change in dependency injection instance
  • Урок 180. 00:00:59
    Lecture 180 - Get More Experience