Udemy

Master the Art of Writing Clean Code in C#

立即報名
  • 6,860 名學生
  • 更新於 7/2020
  • 可獲發證書
4.4
(1,178 個評分)
CTgoodjobs 嚴選優質課程,為職場人士提升競爭力。透過本站連結購買Udemy課程,本站將獲得推廣佣金,有助未來提供更多實用進修課程資訊給讀者。

課程資料

報名日期
全年招生
課程級別
學習模式
修業期
7 小時 9 分鐘
教學語言
英語
授課導師
Engineer Spock
證書
  • 可獲發
  • *證書的發放與分配,依課程提供者的政策及安排而定。
評分
4.4
(1,178 個評分)
1次瀏覽

課程簡介

Master the Art of Writing Clean Code in C#

Learn how to write clean and maintainable code in C# as bequeathed by Uncle Bob. Learn how to perform refactoring in C#.

Learn how to design and implement types in C# so that the other developers won't hate you when using one of the types developed by you. It means you are going to learn how to write code of the high quality: readable, understandable and reliable.

Improve your knowledge in object-oriented programming in the context of clean coding and building types of high quality.

  • Learn how to give the best names for API members 
  • Learn all the tricks related to writing clean functions
  • Avoid common architectural smells. Get rid of unpleasant smells
  • Apply principles of functional programming: achieve immutability, remove side effects, extend types
  • Avoid smells related to dependency injection
  • Write cleaner unit tests
  • Practice Test-Driven Development

Foundations of building object-oriented infrastructures

Despite the fact that C# is a very rich on features language, it's very common to see poorly designed and implemented types in a real world. In fact, C# is one of the richest on features language among object-oriented languages in the world nowadays. But with great power comes great responsibility. It's challenging  to use all those features in a right way.

You probably have already heard the following well-known statement: most code sucks. Well, this course is all about how to produce code which doesn't suck.

Owning skills of producing a well-designed and well-implemented types is the prerequisite for the other developers to treat you as a real professional.

Content and Overview

This course is aimed at all the C# developers, from beginners to seniors. Topics which are covered in the course are relevant for all kinds of C# developers since all developers design and implement APIs. The topics complexity is very different. There are plenty of very simple topics, and at the same time, there are topics which require from you a solid C# background. There are plenty of code examples throughout this course, so you will learn both theoretical and practical material.

The course covers the following topics:

  • Meta Principles: DRY, KISS, YAGNI, SoC, CQS, PoLA, Encapsulation
  • How to give better names for API members and what naming conventions exist in the .NET platform and suited for C#
  • Common problems encountered by C# developers in the process of designing and implementing APIs: classes vs structures, creational patterns vs constructors,  poor naming, excessively long methods, output parameters and so on.
  • Common Architectural Design Smells such as Primitive Obsession, Hidden Dependencies, Violation of Law of Demeter and other.
  • Functional Programming: immutability, temporal coupling, pipelining, extending IDisposable, Builder Design Pattern, abusing extension methods, dealing with errors
  • DI-related anti-patterns: control freak, hidden dependencies, temporal coupling, ambient context, facade service, bastard injection, cyclic dependencies
  • Clean Unit Tests: singletons and static classes, excessive number of interfaces, testing trivial code, testing of a single concern, different best practices
  • Practicing TDD: definition, 3 laws, parsing roman numerals, continuous testing, implementing Tic-Tac-Toe

The list is far from being complete. The course covers a great number of topics. Enroll and start Mastering the Art of Writing Clean Code in C#!

------------------------------------------------------------

Keywords related to the course:

  • C# Clean Code
  • C# Best Practices
  • API in C#
  • Building API in C#
  • Clean Code in C# tutorial
  • Refactoring

課程章節

  • 9 個章節
  • 88 堂課
  • 第 1 章 Before Taking the Course
  • 第 2 章 Programming Metaprinciples
  • 第 3 章 Naming API Members
  • 第 4 章 Writing Clean Functions
  • 第 5 章 Common Architectural Design Smells
  • 第 6 章 Functional Programming: Extendibility and Immutability
  • 第 7 章 DI-Related Anti-Patterns & Refactorings
  • 第 8 章 Clean Unit Tests
  • 第 9 章 Clean Code and TDD

課程內容

  • Give best names for functions, variables and other API members
  • Understand and rely on programming metaprinciples such as DRY, YAGNI, KISS and others
  • Write clean functions
  • Detect common architectural smells and refactor the problems
  • Apply principles of functional programming
  • Apply Dependency Injection and avoid common DI-related smells
  • Write clean unit tests
  • Practice Test-Driven Development

評價

  • M
    Mark Wills
    4.5

    Clear explanation of abstract conecepts

  • O
    Ozan Yarcı
    4.0

    This is a good course but the teacher usually doesn't run the code to check it. In the "56. Extending StringBuilder" part, failure and success messages should be in reverse order but he didn't realize this issue.

  • A
    Attila Koteles
    5.0

    It is amazing to see how many details can a good programmer follow.

  • C
    Cesar Gonzalez
    5.0

    Great

立即關注瀏覽更多

本網站使用Cookies來改善您的瀏覽體驗,請確定您同意及接受我們的私隱政策使用條款才繼續瀏覽。

我已閱讀及同意