There's a lot of material to keep in mind as we plan each program layer, specify each class, and write each line of code. So how does all this translate into a concrete set of strategies for our code? And especially all that functional stuff--how does that fit in?
Here are some guidelines that we will follow in this book. It's not everything, of course, but a summary of the takeaways, as they say in the corporate world, representing the most important points presented here and how we intend to apply them.
As far as possible, we will avoid undeclared side effects in our functions. If a function is there to update a table, that's all it will do; it will have no effect on the rest of the program's data. If the data needs updating before we can use it in the table, then we will create and call a separate updateData
function before updating the table itself.
Related to this, it should be possible to tell from a function's name, its arguments list, and its return...