وب سایت تخصصی شرکت فرین
دسته بندی دوره ها

Ultimate Clean Code Masterclass for 2025

سرفصل های دوره

Write high-quality code no matter the language. Follow SOLID principles and avoid common code smells and antipatterns.


1 - Introduction
  • 1 -Welcome! Basic information & how to get help
  • 2 -46 seconds about your instructor
  • 3 -149 seconds about this course
  • 4 -120 seconds about time optimization
  • 5 -Accessing the code
  • 5 -link to the code repository.zip
  • 6 -To my Ultimate C# Masterclass learners
  • 7 - Resources.html

  • 2 - The importance of clean code
  • 1 -Before we start essential vocabulary
  • 2 -The importance of clean code
  • 3 -Bad decisions related to code quality
  • 4 -Tech debt
  • 5 -Being professional
  • 6 -What is clean code
  • 7 -Good and bad code - comparison
  • 8 -Clean code and AI
  • 8 -amazon q developer.zip
  • 8 -github copilot.zip

  • 3 - Naming
  • 1 -The importance of meaningful names
  • 2 -Naming fundamentals
  • 3 -Following the convention
  • 3 -c# code style.zip
  • 3 -c++ code style.zip
  • 3 -javascript code style.zip
  • 3 -java code style.zip
  • 3 -python code style.zip
  • 4 -Why do we use bad names
  • 5 -Renaming. The Boy Scout rule
  • 6 -Dealing with problematic naming
  • 7 -Expressive names
  • 8 -Long and short names
  • 9 -The Principle of Least Surprise
  • 10 -Semantic correctness
  • 11 -Homonyms
  • 12 -Synonyms
  • 13 -Consistency
  • 14 -Matching plurality
  • 15 -The natural language we use in code
  • 16 -Imitating the spoken language
  • 17 -Bad names - meaningless words
  • 18 -Bad names - overspecific names
  • 19 -Bad names - Hungarian notation
  • 20 -Bad names - confusing names
  • 21 -Bad names - abbreviations
  • 22 -Reasonable abbreviations. Conventional names
  • 23 -Context
  • 24 -Refactoring case studies - introduction
  • 25 -Refactoring case study Naming

  • 4 - Functions
  • 1 -Functions fundamentals
  • 2 -Good signatures of methods
  • 3 -Number of parameters
  • 4 -Fewer parameters - splitting the method
  • 5 -Fewer parameters - bundling related parameters
  • 6 -Fewer parameters - avoiding boolean parameters
  • 7 -Fewer parameters - bad practices
  • 8 -Order of parameters
  • 9 -Ref and out parameters (C# specific topic)
  • 9 -out documentation.zip
  • 9 -ref and out.zip
  • 9 -ref documentation.zip
  • 10 -Small methods
  • 11 -One method, one job
  • 12 -Achieving methods focused on one task only
  • 13 -Refactoring case study One method, one job
  • 14 -Levels of abstraction
  • 15 -Composing different levels of abstraction
  • 16 -Levels of abstraction within methods
  • 17 -Order of methods
  • 18 -Independence of methods
  • 19 -Pure functions
  • 20 -The benefits of pure functions
  • 20 -functional core, imperative shell.zip
  • 20 -shells and cores.zip
  • 21 -Refactoring case study Methods - introduction
  • 22 -Refactoring case study Methods - signature
  • 23 -Refactoring case study Methods - body

  • 5 - Code formatting
  • 1 -The importance of code formatting
  • 2 -Different formatting styles and the value of consistency
  • 3 -Code formatting tools
  • 4 -Indentation
  • 5 -Code blocks
  • 6 -Breaking the lines
  • 7 -Vertical formatting
  • 8 -Refactoring case study Code formatting - code
  • 9 -Refactoring case study Code formatting

  • 6 - SOLID principles
  • 1 -Classes fundamentals
  • 2 -Introduction to SOLID principles
  • 3 -S - Single Responsibility Principle - theory
  • 4 -S - Single Responsibility Principle - code & refactoring
  • 5 -S - Single Responsibility Principle - Recognizing single responsibility
  • 6 -S - Single Responsibility Principle - One reason to change
  • 7 -Abstract types
  • 8 -O - Open-closed Principle - theory
  • 9 -O - Open-closed Principle - code
  • 10 -O - Open-closed Principle - refactoring
  • 11 -O - Open-closed Principle - limitations - toggle mechanism
  • 12 -O - Open-closed Principle - limitations - cant predict all the changes
  • 13 -O - Open-closed Principle - limitations - practicality
  • 14 -L - Liskov Substitution Principle - theory
  • 15 -L - Liskov Substitution Principle - violation of the interface
  • 16 -L - Liskov Substitution Principle - violation of the interface - refactoring
  • 17 -L - Liskov Substitution Principle - runtime type switching
  • 18 -L - Liskov Substitution Principle - runtime type switching - refactoring
  • 19 -L - Liskov Substitution Principle - condition strengthened for subtype
  • 20 -L - Liskov Substitution Principle - condition strengthened for subtype - refac
  • 21 -I - Interface Segregation Principle - theory
  • 22 -I - Interface Segregation Principle - code
  • 23 -I - Interface Segregation Principle - refactoring
  • 24 -I - Interface Segregation Principle - reasoning
  • 25 -D - Dependency Inversion Principle - theory
  • 26 -D - Dependency Inversion Principle - relationship with Dependency Injection
  • 27 -D - Dependency Inversion Principle - dynamic dependency creation
  • 28 -D - Dependency Inversion Principle - code & refactoring
  • 29 -Refactoring case study SOLID principles - code
  • 30 -Refactoring case study SOLID principles - part 1
  • 31 -Refactoring case study SOLID principles - part 2

  • 7 - Static methods
  • 1 -When to make methods static Private methods
  • 2 -The risk of making public methods static
  • 3 -When to make methods static Public methods
  • 4 -Obscuring the dependency graph
  • 5 -Obscuring the dependency graph - why is it bad
  • 6 -Transparent dependency graph

  • 8 - Classes - making them smaller
  • 1 -Benefits of small classes. God class antipattern
  • 2 -Not all large classes are bad
  • 3 -Making classes smaller - bad practices
  • 4 -Making classes smaller - good practices - names
  • 5 -Making classes smaller - good practices - data usage & dependencies
  • 6 -Making classes smaller - good practices - frequent changes in one area
  • 7 -Making classes smaller - good practices - multiple levels of abstraction
  • 8 -Can we have too many classes
  • 9 -Refactoring case study Making classes smaller - code
  • 10 -Refactoring case study Making classes smaller - part 1
  • 11 -Refactoring case study Making classes smaller - part 2
  • 12 -Refactoring case study Making classes smaller - part 3

  • 9 - Classes - design & formatting
  • 1 -Order of class members
  • 1 -Order of class members.pdf
  • 2 -One class, one file
  • 3 -Folder structure within projects
  • 4 -Consistency
  • 5 -Coupling
  • 6 -Refactoring the code to achieve loose coupling
  • 7 -Identifying and fixing tight coupling
  • 8 -Law of Demeter
  • 9 -Cohesion
  • 10 -DRY - Dont Repeat Yourself - repeating business logic
  • 11 -DRY - Dont Repeat Yourself - repeating code
  • 12 -DRY - Dont Repeat Yourself - when its OK to repeat the code
  • 13 -Avoiding BDUF (Big Design Up Front). YAGNI
  • 14 -KISS (Keep It Simple, Stupid)
  • 15 -Refactoring case study Classes - design & formatting - code
  • 16 -Refactoring case study Classes - design & formatting - part 1
  • 17 -Refactoring case study Classes - design & formatting - part 2
  • 18 -Refactoring case study Classes - design & formatting - part 3

  • 10 - Classes - inheritance
  • 1 -Composition over inheritance
  • 2 -The issues of inheritance
  • 3 -Replacing inheritance with composition
  • 4 -The benefits of composition

  • 11 - Comments
  • 1 -Comments
  • 2 -The worst comments
  • 3 -The reasonable comments
  • 4 - Refactoring case study.html

  • 12 - Clean tests & testability
  • 1 -Unit tests fundamentals
  • 2 -Mocks fundamentals
  • 3 -The importance of unit tests
  • 4 -How unit testing affects code quality - safety net
  • 5 -How unit testing affects code quality - better design
  • 6 -How unit testing affects code quality - Test-Driven Development (TDD)
  • 7 -The importance of clean tests
  • 8 -Tests readability
  • 9 -Good practices for writing clean tests
  • 10 -Testability pitfalls - static methods
  • 11 -Testability pitfalls - breaking the Dependency Inversion Principle
  • 12 -Testability pitfalls - not using Dependency Injection
  • 13 -Testability pitfalls - constructor does real work
  • 14 -Keeping constructors simple
  • 15 -Refactoring case study Clean tests & testability - code
  • 16 -Refactoring case study Clean tests & testability - comments
  • 17 -Refactoring case study Clean tests & testability - tests

  • 13 - Bonus section
  • 1 - Bonus lecture.html
  • 139,000 تومان
    بیش از یک محصول به صورت دانلودی میخواهید؟ محصول را به سبد خرید اضافه کنید.
    افزودن به سبد خرید
    خرید دانلودی فوری

    در این روش نیاز به افزودن محصول به سبد خرید و تکمیل اطلاعات نیست و شما پس از وارد کردن ایمیل خود و طی کردن مراحل پرداخت لینک های دریافت محصولات را در ایمیل خود دریافت خواهید کرد.

    ایمیل شما:
    تولید کننده:
    شناسه: 44534
    حجم: 4487 مگابایت
    مدت زمان: 800 دقیقه
    تاریخ انتشار: ۲۰ اردیبهشت ۱۴۰۴
    دیگر آموزش های این مدرس
    طراحی سایت و خدمات سئو

    139,000 تومان
    افزودن به سبد خرید