There have been a a great arguments between the ease and efficient programming versus the needs to balance an ease of system maintenance. As a programmer myself during my early days, we have been well trained to develop an efficient system. Boombastic and cut-throat approach have always been my liking to reduce programming lines and size of my system. At least, these have been louded as the standard procedures for me during my early days in my programming world experience.
We tend to compare whose system coded with the minimal line and still producing the required output. We as well tend to boast on how efficient our system to save memory utilization and as well as how quick our system is to response to any requirement. Too far to see will be the balance between the efficiency and the ease of maintenance of the system or codes in eye-naked view.
So, an important question is; what is ease of maintenance? There are a few approaches or at least strategy that allow us to improve the maintenance of our system. Shall we not able to achieve these, at least we have contribute to the minimal level to simplify the maintenance processes. Below are what's in my mind so far.
01. Consistent format & Programming Style
To establish a consistent programming trend and standard among team members of a collection of developers has remain a challenge to many. Not bounded to any small development team, but as well to many big organization. Individual programmer style will kill off the standard that a system requires to be. A standard style will improve readability and enhance the system logic to any third party auditor or developer. Thus, standardization is important. Imagine a newbie joining the team and the system has been standardized to ease the whole learning curve. Beneficial?
02. Is all about Making Sense
It has been a norm that we like to improve our programming time by giving short and sexy variable, method or even class names. Some denote a, b x, and yadas for various reasons. While we may act as a developer, we may not be the final recipient end to maintain the system. An expressive wording will certainly help to improve system understanding. You may under estimate this effort or self pro-claimed that you are a good programmer that will meet things end, but do can you guarantee that you will perform well when your system grow big and your time resources shrink fast? You may think, but may not be the real.
03. Comment, Comment and keep Commenting
We do not like to write comments on what we have done. Some organization have documentation practices to describe various logical steps. Even our Quality Control Manager (QCM) will have their set of documentation, so why not us? Computer world is heading for automation from time to time. We have Unit Testing and Automated Test to improve quality of the system. Still, a few lines of comment do help when it comes to the dirty work of a programmer. Short but expressive. Be generous on commenting. If your language sucks, try to use some mathematics formula instead. Be creative.
04. Redundancy is not Wasting
I believed we have been advised to keep redundancy low. We started on this topic when we learn Database thru the process of Normalization, if you recalled. Soon, we migrated the similar topic to Programming where we spend effort to reduce redundancy. We understand redundancy kills when it comes to maintenance topic, so, why the hassle I reiterate this discussion? Not all redundancy kills. Redundancy on certain code is important to breakout the "coupled" effect of some methods or interaction between classes. Assuming two methods are loosely coupled, the chances of both to go against each other are higher. In this case, a redundancy of code may safe you more time than any others. So, think twice before we start to kill off redundancy from the table.
The listed items on above will be the simple entry on how to improve maintenance topic in this ever growing demand of Computer World. These are small steps of us as a responsible programmer for the benefit of the system and development team. A small thought of mine, thus weight no offense to you. Move up and be creative?
No comments:
Post a Comment