Understanding Computers Ch. 131 Chapter 13 Program Development and Programming Languages.

Post on 11-Jan-2016

237 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

Transcript

Understanding Computers Ch. 13 1

Chapter 13

Program Development and Programming Languages

Understanding Computers Ch. 13 2

Overview

This chapter covers:

The program development life cycle (PDLC)

Tools that can facilitate program development

Programming languages

Understanding Computers Ch. 13 3

The Program Development Life Cycle (PDLC)

Understanding Computers Ch. 13 4

Problem Analysis

Purpose: Review the specifications developed during system design and develop program specifications.

Usually performed by systems analyst and programmer.

Documentation: Program specifications (what is does, timetable, programming language to be used, etc.)

Understanding Computers Ch. 13 5

Program Design Purpose: To determine the algorithms to be used with the final

program.

Approaches to program design:

Structured programming Structures the program

Object-oriented programming (OOP) Groups program components

Aspect-oriented programming (AOP) Re-uses program components

Understanding Computers Ch. 13 6

Program design tools:

Structure charts

Program flowcharts

Pseudocode

Data modeling

Program Design, Cont’d.

Understanding Computers Ch. 13 9

Program Design, Cont’d.

Control structures—patterns that control when and how the instructions in a computer program are performed.

Sequence

Selection (if-then-else, case)

Repetition (do-while, do-until)

Understanding Computers Ch. 13 11

Program Design, Cont’d. Good program design

Be specific.

One-entry-point, one-exit-point rule.

No infinite loops or logic errors.

Documentation: Design specifications (expressed using flowcharts, pseudocode, structure charts, data models, etc.).

Understanding Computers Ch. 13 13

Program Coding

Coding—the process of writing the actual programming steps using a programming language.

Factors involved when choosing a programming

language:

Suitability Integration Standards

Programmer availability Portability Development speed

Understanding Computers Ch. 13 14

Program Coding, Cont’d.

Coding standards—list of rules designed to standardize programming styles.

Understanding Computers Ch. 13 15

Program Coding, Cont’d. Reusable code

Data dictionary

Translating coded programs into executable code Compilers Interpreters Assemblers

Documentation: Documented, executable source code.

Understanding Computers Ch. 13 16

Program Debugging and Testing Debugging—the process of making sure a program

is free of errors.

Preliminary debugging

Syntax errors (typos, wrong syntax, etc.).

Logic errors (wrong formulas, wrong relational operators, etc.).

Dummy print statements can help locate errors.

Understanding Computers Ch. 13 18

Program Debugging and Testing Testing

Alpha testing (inside organization)

Beta testing (outside testers)

Documentation: Completed program package.

Understanding Computers Ch. 13 19

Program Maintenance Program maintenance—the process of updating

software so that it continues to be useful.

Software updates

Software revisions

Made easier by good coding standards, data dictionaries, reusable code, etc.

Documentation: Amended program package.

Understanding Computers Ch. 13 20

Tools for Facilitating Program Development Application generators:

Macro recorders

Report and form generators

Code generators

Computer-aided software engineering (CASE)

Software-asset management tools

Rapid application development (RAD)

Understanding Computers Ch. 13 21

Programming Languages

Programming language—a set of rules used to write instructions to the computer.

Categories of programming languages:

Low-level languages (machine and assembly language).

High-level languages (BASIC, COBOL, C++, etc.).

Very-high-level (fourth-generation languages).

Natural and visual languages.

Understanding Computers Ch. 13 22

Popular Programming Languages

FORTRAN—the oldest high-level programming language; designed for scientific and mathematical applications.

Understanding Computers Ch. 13 23

Popular Programming Languages, Cont’d. COBOL—designed for business transaction

processing.

Understanding Computers Ch. 13 24

Popular Programming Languages, Cont’d. Pascal—designed to teach structured programming;

useful for math and science applications.

Understanding Computers Ch. 13 25

Popular Programming Languages, Cont’d. BASIC—an easy-to-learn beginner’s programming language.

Visual Basic—an object-oriented, fourth-generation version of BASIC.

Understanding Computers Ch. 13 26

Popular Programming Languages, Cont’d.

C, C++, C#—versions of the highly efficient C programming language; C++ and C# are object-oriented.

Understanding Computers Ch. 13 27

Popular Programming Languages, Cont’d.

Java—object-oriented programming language commonly used for Web applications. Platform independence—Java programs can run on any

platform that supports the Java Virtual Machine.

Java applets—concise stand-alone Java applications ready to be inserted into Web pages. Class files Parameters

Understanding Computers Ch. 13 29

Popular Programming Languages, Cont’d.

Other high-level languages:

Ada APL LISP Logo

PL/1 Prolog RPG SmallTalk

Understanding Computers Ch. 13 30

Summary

The program development life cycle (PDLC)

Good program design

Basic control structures

Coding, debugging, maintaining, and documenting programs

Tools that facilitate the program development process

Common programming languages

top related