Top Banner
Understanding Computers C h. 13 1 Chapter 13 Program Development and Programming Languages
30

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

Jan 11, 2016

Download

Documents

Arnold Atkinson
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Understanding Computers Ch. 131 Chapter 13 Program Development and Programming Languages.

Understanding Computers Ch. 13 1

Chapter 13

Program Development and Programming Languages

Page 2: Understanding Computers Ch. 131 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

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

Understanding Computers Ch. 13 3

The Program Development Life Cycle (PDLC)

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

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.)

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

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

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

Understanding Computers Ch. 13 6

Program design tools:

Structure charts

Program flowcharts

Pseudocode

Data modeling

Program Design, Cont’d.

Page 7: Understanding Computers Ch. 131 Chapter 13 Program Development and Programming Languages.
Page 8: Understanding Computers Ch. 131 Chapter 13 Program Development and Programming Languages.
Page 9: Understanding Computers Ch. 131 Chapter 13 Program Development and Programming Languages.

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)

Page 10: Understanding Computers Ch. 131 Chapter 13 Program Development and Programming Languages.
Page 11: Understanding Computers Ch. 131 Chapter 13 Program Development and Programming Languages.

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.).

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

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

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

Understanding Computers Ch. 13 14

Program Coding, Cont’d.

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

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

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.

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

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.

Page 17: Understanding Computers Ch. 131 Chapter 13 Program Development and Programming Languages.
Page 18: Understanding Computers Ch. 131 Chapter 13 Program Development and Programming Languages.

Understanding Computers Ch. 13 18

Program Debugging and Testing Testing

Alpha testing (inside organization)

Beta testing (outside testers)

Documentation: Completed program package.

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

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.

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

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)

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

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.

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

Understanding Computers Ch. 13 22

Popular Programming Languages

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

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

Understanding Computers Ch. 13 23

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

processing.

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

Understanding Computers Ch. 13 24

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

useful for math and science applications.

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

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.

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

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.

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

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

Page 28: Understanding Computers Ch. 131 Chapter 13 Program Development and Programming Languages.
Page 29: Understanding Computers Ch. 131 Chapter 13 Program Development and Programming Languages.

Understanding Computers Ch. 13 29

Popular Programming Languages, Cont’d.

Other high-level languages:

Ada APL LISP Logo

PL/1 Prolog RPG SmallTalk

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

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