Oldman.setHealth(0.0); //it is subunitary, but undefined behavior - will it access the ‘numeric value’ overload, or the ‘subunitary numeric value’ overload?
Use absolute number to remove the minus. Math.abs()
Oldman.setHealth(0.0); //it is subunitary, but undefined behavior - will it access the ‘numeric value’ overload, or the ‘subunitary numeric value’ overload?
Same result either way, so whatever if branch is first.
Understand the purpose. If you want to kill the old man with 0, then there’s no point to leaving it as 0.9%, understand the non-linear characteristics of life and death.
When you’re dealing with the low level functions, sure, you can keep it simple. When you’re reaching the surface of user input, you’re either going to waste time with validation and error reporting, or you’re going to waste time with interfaces that can handle more shit without complaining. There’s no fool proof either way, but good luck pissing users off with endless docs.
Don’t write your own code just yet.
If your goal in programming is just to be a traffic cop between the user input and the database, all you’re doing is building a virtual bureaucracy, the kind that people really hate and is easily generated with coding tools. Or you’re just deferring the “smoothing out” burden to the UI developers.
Oldman.setHealth(“dicktits”); //normalize pls
Oldman.setHealth(“-100±1%”); //make percentage pls
Oldman.setHealth(0.0); //it is subunitary, but undefined behavior - will it access the ‘numeric value’ overload, or the ‘subunitary numeric value’ overload?
Don’t write your own code just yet.
0
Reject operations.
Use absolute number to remove the minus.
Math.abs()
Same result either way, so whatever if branch is first.
Understand the purpose. If you want to kill the old man with
0
, then there’s no point to leaving it as 0.9%, understand the non-linear characteristics of life and death.When you’re dealing with the low level functions, sure, you can keep it simple. When you’re reaching the surface of user input, you’re either going to waste time with validation and error reporting, or you’re going to waste time with interfaces that can handle more shit without complaining. There’s no fool proof either way, but good luck pissing users off with endless docs.
If your goal in programming is just to be a traffic cop between the user input and the database, all you’re doing is building a virtual bureaucracy, the kind that people really hate and is easily generated with coding tools. Or you’re just deferring the “smoothing out” burden to the UI developers.