skip to Main Content
Sale

Master the Art of Writing Clean Code in C#

$69.99 $12.00

4.88 (12 reviews)
Category:

Description

What you’ll learn

  • 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

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

Who this course is for:

  • Beginner and intermediate level C# developers

Course content

  • Before Taking the Course
  • Programming Metaprinciples
  • Naming API Members
  • Writing Clean Functions
  • Common Architectural Design Smells
  • Functional Programming: Extendibility and Immutability
  • DI-Related Anti-Patterns & Refactorings
  • Clean Unit Tests
  • Clean Code and TDD

12 reviews for Master the Art of Writing Clean Code in C#

  1. Luis Brito

    I can definitely see this course helping breaking through that initial barrier when it comes to learning a programming language. I’m positive I’ll finish it and hopefully master python by then.

  2. Abdallah Galal Abouhussein

    I would like to share my personnel experience, i`m very pleased and happy for taking this impressive course because Dr. Angela always makes it simple and easy to understand and always makes a precaution section before or after any bug that may appear to some students and also write or record the solution for us, and each word she said is very real and easy to understand.
    Thanks Dr. Angela
    Abdallah Galal

  3. Jiaqing Fan

    Very good course. Dr Angela explains things very clearly. The exercises are interactive and helpful.

    Angela’s voice is like ASMR in most lessons. So you won’t lose focus?

  4. Jaime Sánchez Blanco

    Every concept is very well explained so you can assimilate it, and the teacher insists in practicing daily to get the habit of programming. It really motivates to keep studying and practicing every day.

  5. Bradley Carouthers

    3 days in and I’ve already learned more than other training programs where I’ve put months in. Her teaching style is both efficient and effective.

    Edit: Now on day 29 and the course has held up my expectations and hopes. The rise in complexity is not too sharp, and every day feels like an accomplishment. Angela takes her time to explain things without rushing, yet is able to pack tons of information in nuggets of time.

    Still recommend supplemental exposure for a more wholesome grasp. Though, this should be quite enough

  6. Tommy Prévost

    Very good course.

    PROs: lots of coding exercises, clear explanations, great examples, adapted to 2021’s reality.

    CONs: past the first 30 lessons, many similar coding hands-on.

  7. Quang Tu

    I love all the lectures and challenges of this course. I finally find myself in love with coding. This is definitely a fun course. Thank you Angela for this great course.

  8. Fortunate Eze

    This course is nothing short of AMAZING. The level of love and sincere desire to see students succeed present in this course is a rare sight. This course is fun, it’s challenging, it’s suspense-filled, it makes you feel good about yourself solving those challenges. You don’t take this course and memorise codes, you take it and you know what you’re doing because you literally do it yourself.

    It couldn’t possibly be any more obvious that Angela brought out her whole heart, time, energy and resources to give us a course that if priced based on it’s value, many of us certainly can’t afford. I mean, she kept advising and encouraging us to keep going, because she knows the road could get bumpy, she made a few jokes and used funny animations so we smile along the way keeping it fun. Why some people can’t see this and would rather subscribe to trying to bend courses to fit their own personal preferences is beyond me, but I guess people will always be people.

    Dear Angela, I cannot speak for everyone but I certainly can speak for myself and I’m saying thank you. The efforts you put into making this course outstanding didn’t go unnoticed.

    Let as many of us as appreciate your efforts make you happy and energize you to create more life changing courses for us.

    Cheers.

  9. Chendaniel

    Just the course fits me. Learn by doing, it is easy to start and just follow the flow and at day 15 you realized how to program in Python. Then the magic happen. I am on day 27 and I am looking forward to start a new section everyday.

  10. Caspar Cheng

    Angela is my favourite teacher on Udemy, her courses always come with clear and concise demonstration, make it really easy to understand the content. Meanwhile, she also provide a lot of tips to encourage us moving further on the way of coding. I’m definitely a super fan of her. I had finished her web development boot camp and now I’m learning Python 100 days of code. This course is amazing as she provided one particular project for each day’s learning, which is, really useful and handy. Also, those projects are really interesting and won’t let me feel disappointed about myself. Although some of them are a little bit difficult, they’re still resolvable after some struggling and searching online. I’ll recommend this course for those who really want to learn Python well and write real python projects from scratch!

  11. Jonas Weber

    The course was awesome in the first half! Really helped me to get back to programming and learning new techniques. Also the course got way to much focused on web development in the second half, which I’m not really interested in and is redundand to your dedicated web development course. The lack of videos in the last quarter was rather sad. I really would’ve liked some video explanations for pandas and matplotlib. The challenges and capstone projects were great and challenging!
    All in all I can really recommend this course for beginners and those who want to learn python and/or get back to programming!

  12. Rohit Prasad

    Angela is the best teacher I have ever experienced. The way she explains all the topics and makes use of it in the projects is commendable. Thank you so much Angela for this course.

Leave a customer review

Your email address will not be published. Required fields are marked *

Back To Top