What is 'good code'?
Printed From: One Stop Testing
Category: Software Testing @ OneStopTesting
Forum Name: Beginners @ OneStopTesting
Forum Discription: New to the Club...!!! Don't Worry, We are here for you...!!! Learn the very basics of Software Testing and other pertinent Informations.
URL: http://forum.onestoptesting.com/forum_posts.asp?TID=3023
Printed Date: 07Jul2025 at 6:49am
Topic: What is 'good code'?
Posted By: tanushree
Subject: What is 'good code'?
Date Posted: 18Oct2007 at 1:04am
What is 'good code'? 'Good
code' is code that works, is bug free, and is readable and
maintainable. Some organizations have coding 'standards' that all
developers are supposed to adhere to, but everyone has different ideas
about what's best, or what is too many or too few rules. There are also
various theories and metrics, such as McCabe Complexity metrics. It
should be kept in mind that excessive use of standards and rules can
stifle productivity and creativity. 'Peer reviews', 'buddy checks' code
analysis tools, etc. can be used to check for problems and enforce
standards. For C and C++ coding, here are some typical ideas to
consider in setting rules/standards; these may or may not apply to a
particular situation:
•minimize or eliminate use of global variables. •use
descriptive function and method names - use both upper and lower case,
avoid abbreviations, use as many characters as necessary to be
adequately descriptive (use of more than 20 characters is not out of
line); be consistent in naming conventions.
•use descriptive
variable names - use both upper and lower case, avoid abbreviations,
use as many characters as necessary to be adequately descriptive (use
of more than 20 characters is not out of line); be consistent in naming
conventions.
•function and method sizes should be minimized; less than 100 lines of code is good, less than 50 lines is preferable.
•function descriptions should be clearly spelled out in comments preceding a function's code.
•organize code for readability.
•use whitespace generously - vertically and horizontally
•each line of code should contain 70 characters max.
•one code statement per line.
•coding style should be consistent throught a program (eg, use of brackets, indentations, naming conventions, etc.) •in
adding comments, err on the side of too many rather than too few
comments; a common rule of thumb is that there should be at least as
many lines of comments (including header blocks) as lines of code. •no
matter how small, an application should include documentaion of the
overall program function and flow (even a few paragraphs is better than
nothing); or if possible a separate flow chart and detailed program
documentation.
•make extensive use of error handling procedures and status and error logging.
•for
C++, to minimize complexity and increase maintainability, avoid too
many levels of inheritance in class heirarchies (relative to the size
and complexity of the application). Minimize use of multiple
inheritance, and minimize use of operator overloading (note that the
Java programming language eliminates multiple inheritance and operator
overloading.)
•for C++, keep class methods small, less than 50 lines of code per method is preferable.
•for C++, make liberal use of exception handlers.
|
|