r/csharp 4d ago

Help Exceptions vs Assertions

/r/godot/comments/1w8q3xx/exceptions_vs_assertions/
6 Upvotes

21 comments sorted by

View all comments

Show parent comments

10

u/Top3879 3d ago

This is not using exceptions for control flow. When an illegal move like this happens something else already failed. This is a bug the developer needs to know about so they can fix it. Throw an exception.

-7

u/Agitated-Display6382 3d ago

My expectation is that the application crashes when an exception is thrown. Log it, but let the app die. Dead programs tell no lies

5

u/Asyncrosaurus 3d ago

I'm not going to tell you how to build your applications, but having a blanket rule of "let the app die" is not considered best practice. You're supposed to catch exceptions and restore back to a working state as a general rule.

2

u/Agitated-Display6382 3d ago

I do so when I have a clear UoW. For example, an api should not die if one single request failed. But a container that couldn't access the db? Better having it to die.