Introduction to Programming Guidelines
Programming involves a great deal of creativity. The design or requirement specification may suggest a programming languages, either directly because it is specified by the designers or customers. Or indirectly because of the constructs used.
In this section we will discuss several guidelines that apply to programming in general regardless of the language. No matter what language is used each program component involves three major aspects control structures algorithms and data structures. Several overall strategies are useful in preserving the design quality in our code. They are:
1. Localizing Input and Output
2. Including
3. Pseudo code
4. Revising and Rewriting not Patching
5. Reuse
Those parts of a program that real input or generate output are highly specialized and must reflect characteristics of the underlying hardware and software. Because of this dependence, the program sections performing input and output functions are sometimes difficult to test. In tact they may be the sections most likely to change if the hardware or software is modified. Therefore it is describable to localize these sections in components separate from the rest of the code.
An added benefit of localization is generalization of the overall system. Other system wide functions to be performed on the input can be included in the specialized component relieving the other components of the burden and thus eliminating repetition. Similarly , putting output functional in one place makes the system easier to understand and change.
2. Including Pseudo code
The design usually lays out a framework for each program component. Then you add your creativity and expertise to build the lines of code that implement the design. Since the design is an outline of what is to be done in a program component it is useful to move in stages from the specified design to the code, rather than to translate the design immediately into code.
Pseudo code can be used to adapt the design to your chosen language. By adopting constructs and data representation without becoming involved immediately in the specifics of each command we can experiment and decide which implementation is more desirable. In this way code can be rearranged and restructured with a minimum of rewriting.
The pseudo code has acted as framework on which to construct the code. In briefing the code from the design in this way notice that the design organization has changed several times. Such changes must be reported to and approved by the designers, so that the links among requirements design and code can be documented and maintained.
3. Revising and Rewriting Not patching
When writing code for the software development we often write a rough draft. Then it is carefully revised and rewritten until satisfied results are not achieved. If it is seen that the decision processes are hard to understand or the unconditional branches are difficult to remove, then it may be time to return to the design. After that the design in re-examined to see whether the problem are related to the design part or in the translation of design to code. So it is checked again that how the data are represented and structure at the algorithms chosen and at the decomposition .
4. Reuse
As such there two kinds of reuse: Producer reuse and consumer reuse producer reuse is that where we are creating components designed to be reused in subsequent applications whereas consumer reuse is that where we are using components that were originally developed for other project. If you are a consumer for your current project:
There are four key characteristics to check about the components to be reused:
1. Does the component perform the function or provide the data you need?
2. If minor modification is required is it less modifications than building the component from scratch?
3. Is the component well documented so that you can understand it without having to verify its implementation line by line?
4. Is there a complete record of the component test and revision history so that you can be certain that it contains no faults?
You must also assess the amount of code need to write so that your system can interface with the reused components. On the hand if you are a producer of reusable components you should keep in mind several things:
Keep the communication and error handling sections separate and easy to modify.
Latest technology based Software Engineering Online Tutoring Assistance
Tutors, at the www.tutorsglobe.com, take pledge to provide full satisfaction and assurance in Programming Guidelines homework help via online tutoring. Students are getting 100% satisfaction by online tutors across the globe. Here you can get homework help for Programming Guidelines, project ideas and tutorials. We provide email based Programming Guidelines homework help. You can join us to ask queries 24x7 with live, experienced and qualified online tutors specialized in Programming Guidelines. Through Online Tutoring, you would be able to complete your homework or assignments at your home. Tutors at the TutorsGlobe are committed to provide the best quality online tutoring assistance for Software Engineering homework help and assignment help services. They use their experience, as they have solved thousands of the software engineering assignments, which may help you to solve your complex issues of Programming Guidelines. TutorsGlobe assure for the best quality compliance to your homework. Compromise with quality is not in our dictionary. If we feel that we are not able to provide the homework help as per the deadline or given instruction by the student, we refund the money of the student without any delay.
Waveguides tutorial all along with the key concepts of Rectangular waveguide, Transmission of waves in a pair of parallel conducting, poynting vector, Transverse Magnetic (TM) waves
tutorsglobe.com merits of five kingdom assignment help-homework help by online five kingdom system of classification tutors
tutorsglobe.com japanese history assignment help-homework help by online history tutors
separation of peptides tutorial all along with the key concepts of protein purification, purification technique on the basis of solubility, purification technique on the basis of molecular size, kinds of gel materials
www.tutorsglobe.com offers Collaboration Diagram homework help, assignment help, case study, writing homework help, online tutoring assistance by computer science tutors.
General principles of Volumetric Analysis tutorial all along with the key concepts of Requirements for Titration, Methods of Detecting Completion of a Titration Reaction, Features of standard solution, Types of Volumetric Procedures, Volumetric calculation
The Mammalian kidney tutorial all along with the key concepts of Structure of the Mammalian kidney, Functions of the Kidney and Diseases of the Kidney
tutorsglobe.com leishmania assignment help-homework help by online medical parasitology tutors
Application of Indole in Drug Synthesis tutorial all along with the key concepts of Indomethacin, Vinca Alkaloids and Other applications of Indole
signal generator is employed to transmit the small ranges of waves. it is also termed as am transmitter.
while hot water is needed just at one service point, this type is employed. it holds water of low pressure and therefore is termed as non-pressure type.
Homework helper Tutors offer Physics assignment help, homework help, assignment writing services, physics tutoring, writing assignments and homework writing.
tutorsglobe.com propagation by modified subaerial stem assignment help-homework help by online natural methods of vegetative propagation tutors
Radio analytical separation techniques tutorial all along with the key concepts of Precipitation, Distillation, Solvent Extraction, Ion Exchange and Electrochemical deposition
Resistivity Profiling tutorial all along with the key concepts of Targets, Ideal traverse target, Choice of array, Traverse field-notes, Displaying traverse data, topography, Gradient array
1949072
Questions Asked
3689
Tutors
1447727
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!