A lot of classes, such as Plane and Aerodynamic_surface have object state as object variables, with functions updating those states, instead of returning it.
This is bad because one does not know what has happened to the object before it was received, and the state could mean anything (e.g.: the takeoff analysis was run, saving the final state of plane's alpha as 15 degrees, and now the stability analysis is being run. Should I use the 15 degrees for something?). The state has meaning only inside an analysis, and so should only be a functional get method.
A lot of classes, such as Plane and Aerodynamic_surface have object state as object variables, with functions updating those states, instead of returning it.
This is bad because one does not know what has happened to the object before it was received, and the state could mean anything (e.g.: the takeoff analysis was run, saving the final state of plane's alpha as 15 degrees, and now the stability analysis is being run. Should I use the 15 degrees for something?). The state has meaning only inside an analysis, and so should only be a functional get method.