Week 19: 11th Dec - 15th Dec
Began writing configuration file implementation, managed to get good amount of progress done. Went with the Soc/SRP approach and wrapped config interaction in a simple object which would help reduce redundancy and make train wreck lines of code actually readable.
As it turns out, my approach doesn’t conform to the standard usage of ConfigurationManager
, and without that point, I received no points which I thought to be valid enough. Regardless, I will be changing the implementation as suggested by others to get the task over and done with.
Note from future self: little did I know, was that what I was trying to do was already done by ConfigurationManager
itself, and it was a different pattern that I was using incorrectly which triggered the weird feeling I had…
Int32.MaxValue
fiascoFixed the Int32.MaxValue
issue and updated unit tests
Spent good portion of the day going over the correctness of the system to ensure that the final output into the database is well, correct. Managed to find number of relatively minor issues which shouldn’t take too long to fix.
Week 20: 18th Dec - 22nd Dec
Spent morning preparing for the design review. I started the review of by deciding to get Ian up to date with what; me, Lee and Jake covered during the first review. However doing this took the whole afternoon and nothing new was covered…
However (un)surprisingly Ian being system architect/senior developer pointed out number of architectural flaws in my system, and going over everything again I too, realised the ‘architecture’ that I have currently is heavily flawed; number of checks are either pointless or done at wrong times, method namings were off and the fact that I haven’t completely picked up DI/IoC patterns became apparent.
After the daily, morning code review and stand-up I got right to implementing modifications based on the feedback I received on Monday.
The first thing I got doing was trimming the fat and getting rid of unnecessary things like pointless checks. Also began (re)implementing highest level logic and carried on with modifying some underlying logic to fit new (actual) needs (i.e., db reads), and removed a ton of old, useless code.
TaskManager
implementation, going forward with the new improved implementationWorking from home day before breaking up for Christmas/New Year holiday. As we were finishing early today and I had few doctor’s appointments to attend I didn’t manage to get everything I wanted to do, done. However, I still managed to;
boolean
return value plus string
message containing the status of how piece of logic executed, to: using void
return type and if there’s an issue, simply throw an exception
!