The core routines of the Handler superclass have been in place for a week (with under a week left to deadline), but I produced no useful work this week. Eventually I realized it was because I was fretting about the quality of the code in the Handler. It works, sure, but it works in a way that I've come to view as lacking, and which is unacceptible in this project.
It has no engineering in it. It's just sketched out and working, but it ONLY minimally works, and there is NO error handling, and... It's simply not on par, quality and reliability-wise with the Lexer and DOM code (not that I'm pretending they're perfect).
To fix this, I sat down and added a huge new section to the status codes list. Now that the Handler works, this list (section 3000 of it) is the spec for making it properly engineered code. It's also the roadmap for a test suite. I believe I might do my first bit of actual test-driven development, contra my more usual "Okay, this new little chunk works; time to write a test for it" method. (What's a good, marketable term for that, anyway? Would know-nothing trendwhore coders buy into "Test-backed Microdevelopment"? Would management pay $3500 to send their dev leads to a 2-day seminar on TBM?)
No comments:
Post a Comment