With Grails, Rails, Python, etc offering developers the chance to change code, hit refresh and see the changes I often wonder if reload truly a feature that is a must have these days? It seems like it is one of the main selling point by most of the folks pushing those frameworks.
I think this is not a requirement, and doesn’t really increase productivity. Here’s why:
- This promotes less tested code as you can code an entire app without testing at all by simply hitting refresh
- The testing cycle is lengthy by nature, so you do any testing during development, it is going to take some time
- Rather than using reload, if you use the development cycle of write, test, run or test, write, run, than starting up the application incurs minimal overhead in addition to running the tests
So, what are we really trying to accomplish while developing? Better code, less code, better tests, faster development. These things seem to imply great conventions and excellent extensibility and not reloading.