What can you do to make C# greener?

by Jan 11, 2023

Since C# 10 (.NET 6.0) arrived my code looks much cleaner. Less code is less waste, which is good for the environment!

C# 10 achieved this with top-level statements, global using directives and file-scoped namespace declaration.

It’s even spin off a new fresh way of creating Web API’s: Minimal API.

But what can you do to make C# greener?

❌ remove the public access modifier on classes, structs and records. By default, when creating a class, it’s public. This is often not what you want, so remove it and it will default back to internal.

❌ remove the private access modifier on members. Private is already the default for members, so remove it. At first it will look strange but give it a couple of days.

💡 Tip: Change the code inspection in ReSharper or Rider from explicit to implicit to help you!

✅ use records for DTO’s. Your code becomes cleaner, by writing less plumbing code. You also get better logging for free, because the ToString() shows the value of each member.

✅ use switch expressions and pattern matching, when possible, to simplify your code. Combine these two for the ultimate cleanup.

What are your tips to make C# greener?

Remy van Duijkeren

Remy van Duijkeren

Power Platform Advisor

Microsoft Power Platform Advisor with over 25 years of experience in IT with a focus on (marketing) automation and integration.

Helping organizations with scaling their business by automating processes on the Power Platform (Dynamics 365).

Expert in Power Platform, Dynamics 365 (Marketing & Sales) and Azure Integration Services. Giving advice and strategy consultancy.

Services:
– Strategy and tactics advise
– Automating and integrating

Subscribe to
The Daily Friction

A daily newsletter on automation and eliminating friction

Related Content

Backlog: The Black Hole of ideas

Backlog: The Black Hole of ideas Is your backlog turning into an ever-expanding universe of forgotten dreams? We all know that mix—a jumble of big ideas and tiny tasks waiting for their day in the sun. Some items linger for years. Why do backlogs grow? Because we...

read more

The Trade-off Between Budgets and Quality ⚖️

The Trade-off Between Budgets and Quality ⚖️ In my previous post, I talked about shifting from Estimates to Budgets for feature development 💡. Let's dive deeper. Using a Budget instead of an Estimate introduces a trade-off: Scope and Quality adjust to fit the time...

read more

Budgets instead of Estimates

Budgets instead of Estimates Estimating a feature is difficult and is often a guess (or even a lie). An Estimate is for a fixed scope. So, you need to think deeply how to implement the feature, before giving an Estimate. The business can then use the Estimate to...

read more