Sitemap
Any Programming

Practical software engineering across every stack from C# and .NET to Python, TypeScript, Go, and Rust. Hands-on tutorials, system design, design patterns, DevOps, and AI-assisted development, with working code you can actually run. By developers, for developers.

Member-only story

I Stopped Fighting My Business Logic and Started Letting C# Structure It

9 min readOct 6, 2026

--

Press enter or click to view image in full size

For a long time, I thought difficult business logic was unavoidable.

Pricing changed. Customer types added exceptions. Subscriptions gained states. Discounts depended on multiple conditions. Refunds became partial.

The code grew, and every change felt risky.

My instinct was to add more:

Abstractions
Interfaces
Helpers
Patterns

Then I realized the problem wasn’t that C# lacked features.

Business decisions were leaking across the application.

Modern C# helped me make those decisions explicit, so the code became easier to change — not because the business logic disappeared, but because I could finally see where it belonged.

1. The Problem Wasn’t the Amount of Code

One of the first business classes I worked with looked innocent enough.

public class OrderService
{
public decimal CalculatePrice(Order order)
{
decimal price = order.BasePrice;
if (order.CustomerType…

--

--

Maximilian Oliver
Maximilian Oliver

Written by Maximilian Oliver

Article writer in IT and programming | Freelancer | IT specialist sharing insights on tech, coding, and software development.

Any Programming
Any Programming

Published in Any Programming

Practical software engineering across every stack from C# and .NET to Python, TypeScript, Go, and Rust. Hands-on tutorials, system design, design patterns, DevOps, and AI-assisted development, with working code you can actually run. By developers, for developers.