I am developing a .NET application, in C#, with the help of an external consultant. It is our goal to have this project as a test case for a better development process, paying special atention to best practices (so as to produce a proper Software Product instead of just a Program).
Currently, we are in doubt between paying more atention (and wasting more time) developing Exception Handling and Logging infra-structure, or developing the proper Architecture and Functionality of the application (which has already been analyzed and modeled).
So the question is: Does Exception Handling have to be built alongside the application development, or can I just program away and, when things are a bit more ready, I "apply" error handling and exception management code over the program?
This is quite a small and well-understood application, with a well-understood architecture, but we're afraid that too much work will be redone if we don't make a proper choice regarding infra-structure and cross-cutting concerns from the beginning (that is, while most of the code hasn't been written yet).
Another point is: we're not sure if we would use some framework for that or not, and if yes, which one would it be. So, if this is not fundamental, we could develop the rest of the application and come to that later on.
So if you are thinking for a better development process then handling the error would be better approach as you can catch the exception and improve upon them then and there.