Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Clean Code, а также все другие курсы, прямо сейчас!
Премиум
  • Урок 1. 00:02:28
    Welcome to the Course!
  • Урок 2. 00:05:58
    What is "Clean Code"?
  • Урок 3. 00:03:33
    Clean Code - Key Pain Points & How To Write Clean Code
  • Урок 4. 00:01:23
    How Is This Course Structured?
  • Урок 5. 00:03:17
    Course Prerequisites
  • Урок 6. 00:02:32
    Clean Code & Strongly Typed Languages
  • Урок 7. 00:02:05
    About The Course Code Examples
  • Урок 8. 00:01:30
    Functional, OOP, Procedural: The Course Concepts Always Apply!
  • Урок 9. 00:03:18
    Clean Code, Principles & Patterns & Clean Architecture
  • Урок 10. 00:05:02
    Clean Code vs Quick Code
  • Урок 11. 00:01:02
    Module Introduction
  • Урок 12. 00:03:24
    Why Good Names Matter
  • Урок 13. 00:04:04
    Choosing Good Names
  • Урок 14. 00:03:08
    Casing Conventions & Programming Languages
  • Урок 15. 00:03:49
    Naming Variables & Properties - Theory
  • Урок 16. 00:04:45
    Naming Variables & Properties - Examples
  • Урок 17. 00:02:37
    Naming Functions & Methods - Theory
  • Урок 18. 00:03:11
    Naming Functions & Methods - Examples
  • Урок 19. 00:01:57
    Naming Classes - Theory
  • Урок 20. 00:02:35
    Naming Classes - Examples
  • Урок 21. 00:06:25
    Exceptions You Should Be Aware Of
  • Урок 22. 00:07:51
    Common Errors & Pitfalls
  • Урок 23. 00:10:30
    Demo Time!
  • Урок 24. 00:01:12
    Your Challenge - Problem
  • Урок 25. 00:10:02
    Your Challenge - Solution
  • Урок 26. 00:01:07
    Module Introduction
  • Урок 27. 00:03:53
    Bad Comments
  • Урок 28. 00:03:51
    Good Comments
  • Урок 29. 00:02:27
    What is "Code Formatting" Really About?
  • Урок 30. 00:08:04
    Vertical Formatting
  • Урок 31. 00:02:04
    Formatting: Language-specific Considerations
  • Урок 32. 00:03:37
    Horizontal Formatting
  • Урок 33. 00:01:02
    Your Challenge - Problem
  • Урок 34. 00:06:20
    Your Challenge - Solution
  • Урок 35. 00:01:13
    Module Introduction
  • Урок 36. 00:01:39
    Analyzing Key Function Parts
  • Урок 37. 00:06:39
    Keep The Number Of Parameters Low!
  • Урок 38. 00:03:44
    Refactoring Function Parameters - Ideas & Concepts
  • Урок 39. 00:02:13
    When One Parameter Is Just Right
  • Урок 40. 00:04:08
    Two Parameters & When To Refactor
  • Урок 41. 00:04:27
    Dealing With Too Many Values
  • Урок 42. 00:02:42
    Functions With A Dynamic Number Of Parameters
  • Урок 43. 00:04:20
    Beware Of "Output Parameters"
  • Урок 44. 00:09:52
    Functions Should Be Small & Do One Thing!
  • Урок 45. 00:06:12
    Why "Levels of Abstraction" Matter
  • Урок 46. 00:02:52
    When Should You Split?
  • Урок 47. 00:13:10
    Demo & Challenge
  • Урок 48. 00:02:05
    Stay DRY - Don't Repeat Yourself
  • Урок 49. 00:05:42
    Splitting Functions To Stay DRY
  • Урок 50. 00:06:52
    Don't Overdo It - Avoid Useless Extractions
  • Урок 51. 00:12:02
    Understanding & Avoiding (Unexpected) Side Effects
  • Урок 52. 00:09:22
    Side Effects - A Challenge
  • Урок 53. 00:06:16
    Why Unit Tests Matter & Help A Lot!
  • Урок 54. 00:02:53
    Module Introduction
  • Урок 55. 00:01:23
    Useful Concepts - An Overview
  • Урок 56. 00:02:54
    Introducing "Guards"
  • Урок 57. 00:06:34
    Guards In Action
  • Урок 58. 00:03:18
    Extracting Control Structures & Preferring Positive Phrasing
  • Урок 59. 00:04:04
    Extracting Control Structures Into Functions
  • Урок 60. 00:07:33
    Writing Clean Functions With Control Structures
  • Урок 61. 00:08:09
    Inverting Conditional Logic
  • Урок 62. 00:06:58
    Embrace Errors & Error Handling
  • Урок 63. 00:04:28
    Creating More Error Guards
  • Урок 64. 00:04:11
    Extracting Validation Code
  • Урок 65. 00:03:36
    Error Handling Is One Thing!
  • Урок 66. 00:08:57
    Using Factory Functions & Polymorphism
  • Урок 67. 00:01:15
    Working with Default Parameters
  • Урок 68. 00:03:38
    Module Summary
  • Урок 69. 00:01:43
    Module Introduction
  • Урок 70. 00:02:15
    Important: This is NOT an OOP or "Patterns & Principles" Course!
  • Урок 71. 00:04:11
    Objects vs Data Containers / Data Structures
  • Урок 72. 00:03:58
    Why The Differentiation Matters
  • Урок 73. 00:12:55
    Classes & Polymorphism
  • Урок 74. 00:06:21
    Classes Should Be Small!
  • Урок 75. 00:04:50
    Understanding "Cohesion"
  • Урок 76. 00:11:41
    The "Law Of Demeter" And Why You Should "Tell, Not Ask"
  • Урок 77. 00:02:06
    The SOLID Principles
  • Урок 78. 00:07:05
    The Single-Responsibility-Principle (SRP) & Why It Matters
  • Урок 79. 00:05:44
    The Open-Closed Principle (OCP) & Why It Matters
  • Урок 80. 00:05:57
    The Liskov Substitution Principle
  • Урок 81. 00:04:19
    The Interface Segregation Principle
  • Урок 82. 00:07:01
    The Dependency Inversion Principle
  • Урок 83. 00:09:06
    Concepts Summary & Checklist
  • Урок 84. 00:02:58
    Staying Clean!
  • Урок 85. 00:02:45
    Possible Next Steps
  • Урок 86. 00:00:56
    Course Roundup