CHAPTER 4: Key Construction Decisions

advertisement
CHAPTER 4:
KEY CONSTRUCTION
DECISIONS
By: Felegh
Solomon
ITEC 3860- 01
SPRING 2013
4.1- CHOICE OF PROGRAMMING LANGUAGE
 The language that the system will be implemented with
should be one that you are familiar with.
 Programmers are more productive using a familiar language
than an unfamiliar one.
 Language choice af fects productivity and code quality.
LANGUAGES
 There are many dif ferent languages you can choose from such as:
 Ada: language based on Pascal, used primarily in military, space,
and avionics systems.
 Assembly language: low level language, each statement
corresponds to a single machine instruction. Regarded as the
second generation language. Avoided by most programmers.
 C: Mid level language. Portable assembly language, because it
makes extensive for use.
 C++: Object oriented language founded on C
 C#:General purpose, object oriented language.
 Cobol: English like programming language used primarily for
business applications stands for Common Business Oriented
Language.
 Fortran: first high-level computer language used mainly in scientific
and engineering applications.
LANGUAGES CONTINUED…
 Java: Object oriented, similar to C and C++ widespread use for
programming web applications.
 Javascript: Interpreted scripting language. Used primarily for client side
programming such as adding simple functions and online applications to
web pages.
 Perl: (Practical Extraction and Report Language) String handling
language based on C and several UNIX utilities. Often used for system
administration, tasks, and web applications.
 PHP: Open source scripting language originally stood for “Personal
Home Page”, but now stands for “Practical Extraction and Report Lang”.
 Python: Interpreted, interactive, object oriented language. Most
commonly used for writing scripts and small web applications.
 SQL: (Structured Query Lang.) standard language for querying, updating,
and managing relational databases declarative language
 Visual Basic: BASIC (Beginner’s All-purpose Symbolic Instruction Code)
4.2- PROGRAMMING CONVENTIONS
 Implementation must be consistent with the architecture
that guides it and consistent internally such as the…
 Variable names
 Class names
 Routine names
 Formatting conventions
 Commenting conventions
 Without unified discipline, your creation will be sloppy
variations.
 One key to successful programming is consistency so
your brain can be free to focus on the variations that are
really needed.
4.3- YOUR LOCATION ON THE
TECHNOLOGY WAVE
 Because technology is always changing there will always be
dif ferent programming practices depending on where you find
yourself on the “technology cycle” or “wave”.
4.4- SELECTION OF MAJOR
CONSTRUCTION PRACTICES
 When preparing for construction you must decide which of the
many good practices you will emphasize.
 Some use pair programming and test-first development while
others use solo development and formal inspections. Either
combination can work well, it just depends on the specific
circumstances of the project.
4.4 CONTINUED…
 Some questions to ask when deciding on major construction
practices are…(just a few)
1. Have you defined how much design will be done up front
and how much will be done at the keyboard, while the code
is being written?
2. Have you defined coding conventions for names,
comments, and layout?
3. Will programmers program in pairs, or individually, or some
combination of the two?
4. Will programmers write test cases for their code before
writing the code itself?
5. Will programmers review or inspect each other’s code?
6. Have you selected a revision control tool?
Download