C# Coding Guidelines (1) Fundamentals

Recently some talks on dos and don'ts of C# 2.0 / 3.0 / 4.0 are delivered for some junior developers in my friend’s team. Since the feedback looks good, those contents are decided to write down.

C# Coding Guidelines:

This part is used to mention some general concepts.

Framework Design Guidelines

The first thing is, one important way to learn professional C# coding is to read the book “Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries” (2nd Edition).

frame-work-design-guidelines

This book is from the 10 years’ professional coding and design experience of Microsoft. It is the winner of the 16th Jolt Productivity award in 2006. Just like Jeffrey Richter said,

This book is an absolute must read for all .NET developers. It gives clear ‘do’ and ‘don’t’ guidance on how to design class libraries for .NET. It also offers insight into the design and creation of .NET that really helps developers understand the reasons why things are the way they are. This information will aid developers designing their own class libraries and will also allow them to take advantage of the .NET class library more effectively.

Consistency

Anders Hejlsberg, chief designer of C# programming language, said that,

I have always felt that a key characteristic of a framework must be consistency.

It is also mentioned in the Usability Maxims:

Consistency, consistency, consistency.

Consistency need to be enforced as a rule with high priority. Externally consistency makes the design easier to use, and internally consistency makes the code easier to maintain.

Usability

This word is borrowed from the user experience design. Referring to “the king of usabilityJakob Nielsen’s explanation, usability is a part of usefulness:

  • Learnability: How easy is it for developers to accomplish basic tasks (like invoking the API) the first time they encounter the design?
  • Efficiency: Once developers have learned the design, how quickly can they perform tasks?
  • Memorability: When developers return to the design after a period of not using it, how easily can they re establish proficiency?
  • Errors: How many errors do developers make, how severe are these errors, and how easily can they recover from the errors?
  • Satisfaction: How pleasant is it to use the design?

8 Comments

  • https://ma-study.blogspot.com/

  • Adobe Lightroom's most fundamental feature is its ability to catalog every photo that you take. Lightroom is similar to Photoshop but is more like Picsart. Adobe designed Adobe Lightroom Mod Apk Tools to help you import photos, process them, review them and store them. Once you have taken a new image, you can easily insert it into your Lightroom account from the camera. From there, you can edit with professional items.

  • Today I am very happy to hear from you. you are my inspiration Thank you for opening up new perspectives for me.

  • I’m happy to see some great article on your site. I truly appreciate it, many thanks for sharing.

  • Your writing is perfect and complete. <a href="https://google.com.sb/url?sa=t&url=https%3A%2F%2Fwww.mtclean.blog/">baccarat online</a> However, I think it will be more wonderful if your post includes additional topics that I am thinking of. I have a lot of posts on my site similar to your topic. Would you like to visit once?

  • As I am looking at your writing, <a href="https://google.com.sa/url?sa=t&url=https%3A%2F%2Fwww.mtclean.blog/">casinosite</a> I regret being unable to do outdoor activities due to Corona 19, and I miss my old daily life. If you also miss the daily life of those days, would you please visit my site once? My site is a site where I post about photos and daily life when I was free.

  • Looking at this article, I miss the time when I didn't wear a mask. <a href="https://google.com.qa/url?sa=t&url=https%3A%2F%2Fwww.mtclean.blog/">baccaratsite</a> Hopefully this corona will end soon. My blog is a blog that mainly posts pictures of daily life before Corona and landscapes at that time. If you want to remember that time again, please visit us.

  • I have been looking for articles on these topics for a long time. <a href="https://google.com.py/url?sa=t&url=https%3A%2F%2Fwww.mtclean.blog/">slotsite</a> I don't know how grateful you are for posting on this topic. Thank you for the numerous articles on this site, I will subscribe to those links in my bookmarks and visit them often. Have a nice day

Add a Comment

As it will appear on the website

Not displayed

Your website