Buying for a Team? Gift This Course
Wishlisted Wishlist

Please confirm that you want to add C# Developers: Learn the Art of Writing Clean Code to your Wishlist.

Add to Wishlist

C# Developers: Learn the Art of Writing Clean Code

A Hands-on Guide on Common Code Smells in C# and How to Refactor Them using ReSharper
4.6 (395 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
3,633 students enrolled
Created by Mosh Hamedani
Last updated 8/2016
$15 $50 70% off
30-Day Money-Back Guarantee
  • 3.5 hours on-demand video
  • 1 Article
  • 2 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Have a coupon?

"Any fool can write code that a computer can understand. Good programmers write code that humans can understand." - Martin Fowler

Poorly written code is hard to understand, maintain and test. But what separates poorly written code (aka code that smells) from beautiful code that talks? In this course, Mosh walks you through common code smells found in C# programs and how to refactor them using ReSharper. Refactoring is changing the design of the existing code without changing its external behaviour.

In every lecture, you'll see an example of a popular code smell with Mosh's explanations about what is wrong about that code and why. You'll then learn how to change the code in a safe and step-by-step fashion while minimising breaking changes. All the source codes presented in the lectures are available for download so you can practice these techniques on your own.

This course is packed with techniques and is a must for any C# developer who wants to improve the quality of their code.

By the end of this course, you'll be able to

  • Spot the smells in your code
  • Refactor your code using safe and fast refactoring techniques with ReSharper
  • Write clean code that is more readable and maintainable

In particular, you'll learn how to

  • Break long methods into smaller, more maintainable ones
  • Simplify nested / complex conditional blocks
  • Design the proper signature for your methods
  • Remove duplicated code
  • Refactor switch statements into an object-oriented design using polymorphism
  • Write C# code using the standard naming convention
  • And more...

Who is the target audience?
  • Any C# developer who has an interest in improving the quality of their code
Students Who Viewed This Course Also Viewed
What Will I Learn?
Tell the difference between good and bad good
Identify the smells in your code
Refactor your code in a safe and fast way using ReSharper
Write clean code that reveals the intent
Decompose long methods into smaller, more maintainable ones
Refactor lengthy switch statements into an object-oriented design
Simplify nested / complex conditional blocks
Remove duplicated code
Design the proper signature for your methods
View Curriculum
  • C# (at any level)
Curriculum For This Course
Expand All 21 Lectures Collapse All 21 Lectures 03:24:35
4 Lectures 06:45

Source Codes
1 page

Asking Questions
Common Code Smells
12 Lectures 02:39:57

Poor Naming Conventions

Poor Method Signatures

Long Parameter List

Variable Declarations on the Top

Magic Numbers

Nested Conditionals

Switch Statements

Duplicated Code


Long Methods
Complete Refactoring Examples
2 Lectures 34:30
WebForms Example - Part 1

WebForms Example - Part 2
Additional Resources
3 Lectures 01:25
Final Words

Get My Other Courses with a Discount

Stay in Touch
1 page
About the Instructor
4.6 Average rating
20,893 Reviews
57,312 Students
11 Courses
Passionate Software Engineer and Best-selling Author

Moshfegh Hamedani is a passionate and creative software engineer with a strong focus on pragmatism and simplicity. He started programming at the age of seven on a Commodore 64. Later, during his high school years, he started learning C and C++ . In 2002, along with the first release of .NET, he shifted his focus to C#. Since then he has been involved in the design and implementation of numerous software projects, including modern web applications, mobile apps, desktop applications and frameworks.

Aside from his career as a software engineer, he truly enjoys sharing his knowledge with others. Since his early twenties, he has been teaching courses and running workshops on C#, ASP. NET, object-oriented programming and clean coding. He is author of 6 best-selling courses on Udemy and more will be coming soon.

Mosh has a Master of Science in Network Systems and a Bachelor of Science in Software Engineering. He is also a Microsoft Certified Application Developer, Technology Specialist (Web Applications) and Professional.

Outside the software world, Mosh is a photographer, a pianist and a passionate Latin dancer.

Report Abuse