Discovering
Computers 2009
Chapter 13
Programming
Languages and
Program Development
Chapter 13 Objectives
Differentiate between machine
and assembly languages
Describe various ways to develop Web pages
including HTML, scripting languages,
DHTML, XML, WML, and Web page
authoring software
Identify the uses of popular multimedia
authoring programs
Identify and discuss the purpose of
procedural programming languages
Identify and discuss the characteristics of
object-oriented programming languages and
program development tools
Identify the uses of other programming
languages and other program development
tools
List the six steps in the program
development cycle
Differentiate between structured design and
object-oriented design
Explain the basic control structures and
design tools used in designing solutions to
programming problems
Next
Computer Programs and Programming Languages
What is a computer program?
Series of instructions that directs computer to
perform tasks
Programming languageused to communicate
instructions
p. 664 Fig. 13-1
Next
Computer Programs and Programming Languages
What are low-level languages and high-level languages?
Low-level
language
Machine-dependent
runs only on one type of computer
Machine and assembly languages
are low-level
p. 664 - 665
High-level
language
Often machine-independent
can run on many different
types of computers and operating
systems
Next
Low-Level Languages
What is machine language?
Only language computer
directly recognizes
Uses a series of binary
digits (1s and 0s) with a
combination of numbers
and letters that represent
binary digits
p. 665 Fig. 13-2
Next
Low-Level Languages
What is assembly language?
Instructions made up of
symbolic instruction
codes, meaningful
abbreviations and codes
Source program contains
code to be converted to
machine language
p. 666 Fig. 13-3
Next
Procedural Languages
What is a procedural language?
Programmer writes
instructions that tell
computer what to accomplish
and how to do it
Uses series of English-like
words to write instructions
Often called third-generation
language (3GL)
p. 666
Next
Procedural Languages
What is a compiler?
Program that
converts entire
source
program into
machine
language
before
executing it
p. 667 Fig. 13-4
Next
Procedural Languages
What is an interpreter?
Program that
translates and
executes one
program code
statement at
a time
Does not produce
object program
p. 667 Fig. 13-5
Next
Procedural Languages
What is COBOL?
Designed for business applications
English-like statements make code easy to read, write,
and maintain
Common Business-Oriented Language
Click to view Web
Link, click Chapter 13, Click
Web Link from left
navigation, then click
COBOL below Chapter 13
p. 668 Fig. 13-6
Next
Procedural Languages
What is C?
Powerful language originally designed to write system
software
Requires professional programming skills
p. 668 Fig. 13-7
Next
Object-Oriented Programming Languages
What is an object-oriented programming (OOP) language?
Used to
implement
object-oriented
design
Object is
item that
contains
data and
procedures
that act on
data
p. 669
Major benefit
is ability to
reuse and
modify existing
objects
Event-driven
checks for
and responds
to set of events
Java, C++, C#,
and Visual Basic
are complete
object-oriented
languages
Event is
action to
which
program
responds
Next
Object-Oriented Programming Languages
What is Java?
Developed by Sun
Microsystems
Uses just-in-time
(JIT) compiler to
convert bytecode
into machinedependent code
Click to view Web
Link, click Chapter 13, Click
Web Link from left
navigation, then click
Java Platforms
below Chapter 13
p. 669 Fig. 13-8
Next
Object-Oriented Programming Languages
What is C++?
Includes all elements of C, plus additional features
for working with object-oriented concepts
Used to develop
database and
Web applications
Click to view Web
Link, click Chapter 13, Click
Web Link from left
navigation, then click
C++ below Chapter 13
p. 670 Fig. 13-9
Next
Object-Oriented Programming Languages
What is C#?
Object-oriented programming language based on C++
Accepted as a standard for Web applications and
XML-based Web services
Uses a JIT compiler
Resulting code is called Microsoft Intermediate
Language (MSIL)
p. 670
Next
Object-Oriented Programming Languages
What is a visual programming language?
Visual programming
environment (VPE)
allows developers to
drag and drop objects
to build programs
Provides visual or
graphical interface for
creating source code
Often used in RAD
(rapid application
development)
environment
p. 669 and 673
Programmer writes
and implements
program in segments
Next
Object-Oriented Programming Languages
What is Visual Studio?
.NET is set of technologies that allows program to run on Internet
Comprised of Visual Basic, Visual C++, and Visual C#
Step 1. The
Step 2. The developer
developer
designs the
user interface.
assigns properties to each
object on the form.
Step 3. The
Click to view Web Link,
click Chapter 13, Click
Web Link from left
navigation, then click
Visual Studio Tools for Office
below Chapter 13
Step 4. The developer
p. 670 - 672 Fig. 13-10
developer
writes code
to define the
action of each
command button.
Next
tests the program.
Object-Oriented Programming Languages
What is Delphi?
Powerful program development tool
Ideal for large-scale enterprise and Web applications
p. 672 Fig. 13-11
Next
Object-Oriented Programming Languages
What is PowerBuilder?
Another powerful
visual programming
tool
Best suited for Webbased and large-scale
enterprise objectoriented applications
p. 673 Fig. 13-12
Next
Other Programming Languages
What are nonprocedural languages and program
development tools?
p. 674 and 676
Nonprocedural
Language
Program Development
Tools
The programmer writes Englishlike instructions or interacts with
a visual environment to retrieve
data from files or a database
User-friendly programs
designed to assist both
programmers and users in
creating programs
Next
Other Programming Languages
What is RPG (Report Program Generator)?
Nonprocedural language used for generating reports,
accessing data, and updating data
p. 674 Fig. 13-13
Next
Other Programming Languages
What is a fourth-generation language (4GL)?
Nonprocedural language that allows access to data in
database
Popular 4GL is SQL, query language that allows users to
manage data in relational DBMS
p. 674 Fig. 13-14
Next
Other Programming Languages
What are other available programming languages?
Ada
BASIC
ALGOL
Forth
FORTRAN
Logo
LISP
Pascal
APL
PILOT
HyperTalk
Modula-2
PL/1
Prolog
Smalltalk
p. 675 Fig. 13-15
Next
Other Program Development Tools
What is an application generator?
Program that creates source code or machine code from
specification
Consists of report writer, form, and menu generator
p. 676 Fig. 13-16
Form provides areas
for entering data
Next
Other Program Development Tools
What is a macro?
Series of statements that instructs an application how
to complete a task
Click to view Web
Link, click Chapter 13, Click
Web Link from left
navigation, then click
Macros below Chapter 13
p. 676 - 677 Fig. 13-17
Next
Web Page Development
What is HTML (Hypertext Markup Language)?
Used to create Web pages
p. 678 Fig. 13-18
Next
Web Page Development
How are special effects and interactive elements added
to a Web page?
Script
interpreted
program that
runs on client
Applet
usually runs
on client, but
is compiled
Counter
tracks
number of
visitors to
Web site
Servlet
applet that
runs on
server
Image map
graphic
image that
points to
URL
ActiveX
control
small program
that runs on
client
Processing
form
collects data
from visitors
to Web site
p. 679
Next
Web Page Development
What is the common gateway interface (CGI)?
Communications standard
that defines how Web server
communicates with outside
sources
CGI scriptprogram that
manages sending and receiving
across CGI
p.679 - 680 Fig. 13-19
Next
Web Page Development
What is a scripting language?
Typically easy to learn and use
JavaScript
Perl (Practical Extraction
and Report Language)
PHP (PHP: Hypertext
Preprocessor)
Rexx (Restructured
eXtended eXecutor)
TCL (Tool Command
Language)
VBScript (Visual Basic,
Scripting Edition)
Click to view Web
Link, click Chapter 13, Click
Web Link from left
navigation, then click
PHP below Chapter 13
p. 680 - 681 Fig. 13-20
Next
Web Page Development
What is dynamic HTML (DHTML)?
Click to view Web
Link, click Chapter 13, Click
Web Link from left
navigation, then click
DHTML
below Chapter 13
p. 682 Fig. 13-21
Allows developers to
include more graphical
interest and interactivity
in Web page
Next
Web Page Development
What are XHTML, XML, and WML?
XHTML
(Extensible HTML)
enables Web sites to be displayed
more easily on microbrowsers
XML
(Extensible Markup Language)
allows developers to
create customized tags
WML
(Wireless Markup Language)
allows developers to design pages
specifically for microbrowsers
p. 682 - 683
Includes features of HTML
and XML
Server sends entire record to
client, enabling client to do
much of processing without
going back to server
Many Internet-enabled
smart phones and PDAs
use WML as their markup
language
RSS 2.0
and
ATOM
Next
Web Page Development
What is Ajax?
p. 683
Stands for Asynchronous JavaScript and XML
Method of creating interactive Web applications designed
to provide immediate response
Combines JavaScript, HTML or XHTML, XML, and
cascading style sheets
Google Maps and Flickr use Ajax
Next
Web Page Development
What is Ruby on Rails (RoR)?
Also called Rails
Open source framework that provides technologies for
developing object-oriented, database-driven Web sites
Ruby is derived from a variety of languages, including Ada,
LISP, Perl, and Smalltalk
p. 683
Next
Web Page Development
What is Web page authoring software?
Creates sophisticated Web pages without using HTML
Generates HTML
Dreamweaver
Expression Web
Flash
Click to view Web Link,
click Chapter 13, Click
Web Link from left
navigation, then click
Silverlight below Chapter 13
p. 683
Silverlight
Next
Multimedia Program Development
What is multimedia authoring software?
Combines text,
graphics, animation,
audio, and video into
interactive presentation
Used for computerbased training (CBT)
and Web-based training
(WBT)
Software includes
Toolbook, and Director
p. 684 Fig. 13-22
Next
The Program Development Cycle
What is the program development cycle?
Steps programmers use to build computer programs
Programming
teamGroup of
programmers
working on
program
p. 685 - 686 Fig. 13-23
Next
Step 1 Analyze Requirements
What is involved in analyzing the requirements?
1. Review requirements
2. Meet with systems analyst and users
3. Identify input, output, processing, and data
components
IPO chartIdentifies programs input, processing, and
output components
p. 686 - 687 Fig. 13-24
Next
Step 2 Design Solution
What is involved in designing the solution?
Two
approaches
Devise
solution
algorithm,
step-by-step
procedure to
solve problem
p. 687
Object-oriented
design
Structured
design, sometimes
called top-down design
Programmer
begins with general
design and moves toward
detailed design
Next
Step 2 Design Solution
What is a hierarchy chart?
Shows program modules graphically
Also called structure chart
p. 687 Fig. 13-25
Next
Step 2 Design Solution
What is object-oriented (OO) design?
Programmer packages data and
program into single unit, an object
Objects are grouped into classes
Class diagram represents hierarchical
relationships of classes graphically
Click to view Web
Link, click Chapter 13, Click
Web Link from left
navigation, then click
Object-Oriented Design
below Chapter 13
p. 688 Fig. 13-26
Next
Step 2 Design Solution
What is a sequence control structure?
Control structure that shows actions following each
other in order
Control structure depicts
logical order of program
instructions
p. 688 Fig. 13-27
Next
Step 2 Design Solution
What is a selection control structure?
Tells program which
action to take, based
on a certain
condition
Two types
p. 689 Fig. 13-28
Case control structure
If-then-else control
structureyields one
of two possibilities:
true or false
Next
Step 2 Design Solution
What is a case control structure?
Yields one of three or more possibilities
p. 689 Fig. 13-29
Next
Step 2 Design Solution
What is a repetition control structure?
Enables program to perform one or more actions
repeatedly
Do-while control
structurerepeats as
long as condition is
true
Do-until control
structurerepeats
until condition is true
p. 689 - 690 Figs. 13-3013-31
Next
Step 2 Design Solution
What is a program flowchart?
Graphically shows logic
in solution algorithm
p. 690 Fig. 13-32
Next
Step 2 Design Solution
What is an example of a flowchart?
p. 691 Fig. 13-33
Next
Step 2 Design Solution
What is flowcharting software?
Used by programmers to develop flowcharts
Click to view Web
Link, click Chapter 13, Click
Web Link from left
navigation, then click
Flowcharting Software
below Chapter 13
p. 690 - 691 Fig. 13-34
Next
Step 2 Design Solution
What is pseudocode?
Uses condensed form
of English to convey
program logic
p. 690 and 692 Fig. 13-35
Next
Step 3 Validate Design
What is involved in validating the design?
Check program
design for accuracy
Desk check
programmers use test
data to step through logic
Test data
sample data that
mimics real data that
program will process
Programmer checks
logic for correctness
and attempts to uncover
logic errors
Logic error
design flaw
that causes
inaccurate results
Inspection
systems analyst reviews
deliverables during the system
development cycle
p. 693
Next
Step 4 Implement Design
What is implementation?
Writing the code that translates the design into a program
Syntaxrules that specify how to write instructions
Commentsprogram documentation
Extreme programming (XP)coding and testing as soon as
requirements are defined
p. 693 - 694 Fig. 13-38
Next
Step 5 Test Solution
What is involved in testing the solution?
Ensure program runs correctly
and is error free
Debugginglocating and
correcting syntax and logic
errors, or bugs
Test copy of program,
called beta, sometimes
used to find bugs
Click to view Web
Link, click Chapter 13, Click
Web Link from left
navigation, then click
Beta Testers
below Chapter 13
p. 695 - 696
Next
Step 6 Document Solution
What is involved in documenting the solution?
Programmer performs two activities
Reviews program
coderemoves dead
code, program
instructions that
program never executes
p. 696
Reviews
documentation
Next
Companies on the Cutting Edge
Video: Electronic Arts Going Mobile
CLICK TO START
Next
Summary of Programming Languages and Program Development
Various programming languages
used to create
computer programs
The program development
cycle and the tools used to make
this process efficient
Chapter 13 Complete
Web development and multimedia
development tools