• Урок 1. 00:04:11
    Welcome
  • Урок 2. 00:26:01
    Are Singletons and Global Instances Damaging your ...
  • Урок 3. 00:17:53
    Intro to Dependency Diagrams and Composition
  • Урок 4. 00:15:28
    Intro to Modular Design
  • Урок 5. 00:22:15
    BDD, TDD, Use Cases, Architecture and Modular Design
  • Урок 6. 00:10:51
    Effectively Developing Swift Apps Before the Backend/Design Is Ready
  • Урок 7. 00:23:55
    From Singletons and Globals to Proper Dependency Injection
  • Урок 8. 00:07:35
    Asserting a Captured Value Is Not Enough + Cross-Module Access Control
  • Урок 9. 00:21:59
    Handling Errors + Stubbing vs. Spying + Eliminating Invalid Paths
  • Урок 10. 00:40:04
    A Classicist TDD Approach (No Mocking) to Mapping ...
  • Урок 11. 00:16:15
    Automating Memory Leak Detection + Preventing ...
  • Урок 12. 00:13:27
    Conforming to Feature Abstractions ...
  • Урок 13. 00:31:45
    Four Approaches to Test(-Drive) Network Requests: End-to-End, Subclass ...
  • Урок 14. 00:41:18
    Speeding up Development by: Reducing Debugging Time...
  • Урок 15. 00:22:16
    Randomizing & Parallelizing Tests, Code Coverage...
  • Урок 16. 00:10:20
    Identifying, Debugging, and Solving Data Races with the Thread Sanitizer
  • Урок 17. 00:10:28
    URLCache as a Persistence Alternative ...
  • Урок 18. 00:10:42
    Clarifying Requirements, Enhancing Cross-Team ...
  • Урок 19. 00:31:00
    Decoupling Use-Case Business Logic From Framework Details...
  • Урок 20. 00:11:44
    Proper Memory-Management of Captured References ...
  • Урок 21. 00:20:14
    Visualizing and Solving High-Coupling Issues by Decentralizing ...
  • Урок 22. 00:28:23
    Performing Calendrical Calculations Correctly, Dealing With Coincidental ...
  • Урок 23. 00:08:41
    Test-driving Cache Invalidation + Identifying Complex (Bloated) Functionality ...
  • Урок 24. 00:20:01
    Separating Queries & Side-effects for Simplicity and Reusability ...
  • Урок 25. 00:20:33
    Separating App-specific, App-agnostic & Framework logic, Entities...
  • Урок 26. 00:12:48
    Dependency Inversion Anatomy (High-level | Boundary | Low-level) ...
  • Урок 27. 00:29:35
    Persisting/Retrieving Models with Codable+FileSystem ...
  • Урок 28. 00:18:35
    Deleting Models and Handling Errors with Codable+FileSystem ...
  • Урок 29. 00:11:38
    Designing and Testing Thread-safe Components with DispatchQueue, ...
  • Урок 30. 00:08:19
    Protocol vs Class Inheritance, Composite Reuse Principle ...
  • Урок 31. 00:05:45
    Core Data Overview, Implementation, Concurrency Model...
  • Урок 32. 00:19:47
    Finishing the Cache Implementation with Business Logic ...
  • Урок 33. 00:16:03
    Improving Model Composability With Swift’s Standard Result and Optional Types, ...
  • Урок 34. 00:16:06
    Gathering Fast Feedback and Validating UI ...
  • Урок 35. 00:09:13
    Supporting Multiple Platforms with Swift Frameworks While..
  • Урок 36. 00:19:45
    Apple MVC, Test-driving UIViewControllers, Dealing with UIKit†...
  • Урок 37. 00:35:35
    Effectively Test-driving MVC UI with Multiple Views/Models/State, Efficiently ...
  • Урок 38. 00:22:09
    Refactoring Massive View Controllers Into Multiple Tiny MVCs...
  • Урок 39. 00:26:43
    MVVM: Reducing Boilerplate, Shifting Reusable Presentation Logic from ...
  • Урок 40. 00:31:30
    MVP: Creating a Reusable and Cross-Platform Presentation Layer, Implementing ...
  • Урок 41. 00:23:48
    Storyboard vs. Code: Layout, DI and Composition, Identifying the Constrained ...
  • Урок 42. 00:17:39
    Creating, Localizing, and Testing Customer Facing Strings ...
  • Урок 43. 00:14:56
    Decorator Pattern: Decoupling UIKit Components From Threading Details ...
  • Урок 44. 00:27:57
    Test-driven Approach to Effectively Dealing with Legacy Code...
  • Урок 45. 00:14:12
    Feed Image Data Loading and Caching with URLSession/CoreData ...
  • Урок 46. 00:27:55
    Composite Pattern: Implementing a Flexible ...
  • Урок 47. 00:27:05
    Interception: An Effective, Modular and Composable...
  • Урок 48. 00:32:23
    Validating Acceptance Criteria with High-Level UI Tests ...
  • Урок 49. 00:26:53
    Validating Acceptance Criteria with Fast ...
  • Урок 50. 00:23:23
    Validating the UI with Snapshot Tests + Dark Mode Support
  • Урок 51. 00:07:27
    Preventing a Crash when Invalidating Work Based on UITableViewDelegate events
  • Урок 52. 00:24:05
    Organizing Modular Codebases with Horizontal and Vertical Slicing
  • Урок 53. 00:18:45
    Continuous Delivery and Deployment: Automating the App Deploy to App Store Connect
  • Урок 54. 00:25:56
    From Design Patterns to Universal Abstractions Using the Combine Framework
  • Урок 55. 02:19:53
    #001 - [Image Comments API] From Dependency Injection to Dependency Rejection
  • Урок 56. 02:31:21
    #002 - [Image Comments Presentation] Reusable Presentation Logic
  • Урок 57. 00:52:02
    #003 - [Image Comments UI] Reusable UI Components, Diffable Data Sources...
  • Урок 58. 01:02:56
    #004 - [Image Comments Composition] Navigation and Feature Composition
  • Урок 59. 02:48:48
    #005 - Keyset Pagination with Caching Strategy
  • Урок 60. 01:41:05
    #006 - Logging, Profiling, and Optimizing Infrastructure Services
  • Урок 61. 01:41:35
    #007 - Async Injection: Decoupling the Domain from Infra Details
Этот материал находится в платной подписке. Оформи премиум подписку и смотри iOS Lead Essentials, а также все другие курсы, прямо сейчас!
Премиум