3 ms·
There are two use cases there that end up with a conflict of interest: One is the UX of having a crash during an important play session(high stakes match) and t
by zubat 10y ago
There are two use cases there that end up with a conflict of interest: One is the UX of having a crash during an important play session(high stakes match) and the other is the developer ease of tracing and debugging errors, which favors crashing over letting erroneous behavior taint the whole system.
In practice this means that during development you want the game to fail fast and loudly so that the biggest bugs are taken care of, but gradually add features to fail more quietly later, e.g. by moving more errors into logs and traces.
- lotharbot 10y agoExactly right. Test builds can crash; production builds should log errors (and perhaps inform the user).
- cperciva 10y agoThis is a very good strategy for getting dangerous security flaws. BIND's security has improved dramatically since they went all-out on assertions; at least 1/3 of the "crash" bugs would have been remote code execution without the protective crashing.
- lotharbot 10y agosure, that's one of the tradeoffs. For some types of software, that's a dominant consideration. For others, it has little or no relevance.