Discovering Computers 2008
Chapter 13
Programming
Languages and
Program Development
Chapter 13 Objectives
Describe various ways to develop Web pages
including HTML, scripting languages,
DHTML, XML, WML, and Web page
Differentiate between machine authoring software
and assembly languages
Identify the uses of popular multimedia
authoring programs
Identify and discuss the purpose of
procedural programming languages
List the six steps in the program
development cycle
Identify and discuss the characteristics of
object-oriented programming languages and
program development tools
Differentiate between structured design and
object-oriented design
Identify the uses of other programming
languages and other program development
tools 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 language—used 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 High-level
language language
Machine-dependent Often machine-independent
runs only on one type of computer can run on many different
types of computers and operating
Machine and assembly languages systems
are low-level
p. 665 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 Uses series of English-like
computer what to accomplish words to write instructions
and how to do it
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 Next
Procedural Languages
What is C?
Powerful language originally designed to write system
software
Requires professional programming skills
COBOL
C
p. 668 Fig. 13-6 and 13-7 Next
Object-Oriented Programming Languages
What is an object-oriented programming (OOP) language?
Used to Major benefit Event-driven— Java, C++, C#,
implement is ability to checks for and Visual Basic
object-oriented reuse existing and responds are complete
design objects to set of events object-oriented
languages
Object is
item that Event is
contains action to
data and which
procedures program
that act on responds
data
p. 669 Next
Object-Oriented Programming Languages
What is Java?
Developed by Sun
Microsystems
Similar to C++ but
uses just-in-time
(JIT) compiler to
convert source
code into machine
code
Click to view Web
Link, click Chapter 13, Click
Web Link from left
navigation, then click
Java 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)
Click to view Web
Link, click Chapter 13, Click
Web Link from left
navigation, then click
C# below Chapter 13
p. 670 Next
Object-Oriented Programming Languages
What is a visual programming language?
Visual programming Provides visual or
environment (VPE)
graphical interface for
allows developers to
drag and drop objects creating source code
to build programs
Sometimes called
fifth-generation
language
Programmer writes
and implements
Often used in RAD program in segments
(rapid application
development)
environment
p. 669 and 673 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++, Visual C#, and Visual J#
Step 1. The Step 2. The developer
developer assigns properties to each
designs the object on the form.
user interface.
Step 3. The
developer
writes code
Click to view Web Link, to define the
click Chapter 13, Click action of each
Web Link from left command button.
navigation, then click
Visual Studio Tools for Office
below Chapter 13
p. 670 - 672 Fig. 13-10
Step 4. The developer Next
tests the program.
Object-Oriented Programming Languages
What is Delphi?
Powerful visual programming 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 Web-based and large-scale
enterprise object-oriented applications
p. 673 Fig. 13-12 Next
Other Programming Languages
What are nonprocedural languages and program
development tools?
Nonprocedural Program Development
Language Tools
The programmer writes English- User-friendly programs
like instructions or interacts with designed to assist both
a visual environment to retrieve programmers and users in
data from files or a database creating programs
p. 669 and 674 Next
Other Programming Languages
What is RPG (Report Program Generator)?
Nonprocedural language used for generating reports,
performing computations, and updating files
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 ALGOL APL
BASIC FORTH FORTRAN HYPERTALK
LISP LOGO MODULA-2
PASCAL PILOT 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
Form provides areas for
entering data
p. 676 Fig. 13-16 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
Click to view Web
Link, click Chapter 13, Click
Web Link from left
navigation, then click
HTML below Chapter 13
p. 678 Fig. 13-18 Next
Web Page Development
How are special effects and interactive elements added
to a Web page?
Script Applet Servlet ActiveX
interpreted usually runs applet that control
program that on client, but runs on small program
runs on client is compiled server that runs on
client
Counter Image map Processing
tracks graphic form
number of image that collects data
visitors to points to from visitors
Web site URL 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 script—program 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)
p. 680 - 681 Fig. 13-20 Next
Web Page Development
What is dynamic HTML (DHTML)?
Allows developers to
include more graphical
interest and interactivity
in Web page
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 Next
Web Page Development
What are XHTML, XML, and WML?
XHTML
(Extensible HTML) Includes features of HTML
enables Web sites to be displayed and XML
more easily on microbrowsers
XML Server sends entire record to
(Extensible Markup Language) client, enabling client to do
allows developers to much of processing without
create customized tags going back to server
RSS 2.0
WML
Many PDAs and smart
(Wireless Markup Language) phones use WML as their
allows developers to design pages markup language
specifically for microbrowsers
p. 682 - 683 Next
Web Page Development
What is Ajax?
Stands for Asynchronous JavaScript and XML
Method of creating interactive Web applications designed
to provide immediate response
Combines JavaScript, HTML or XHTML, and XML
Google Maps and Flickr use Ajax
Click to view Web Link,
click Chapter 13, Click
Web Link from left
navigation, then click
Ajax below Chapter 13
p. 683 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 Flash
Web
p. 683 Next
Multimedia Program Development
What is multimedia authoring software?
Combines text,
graphics, animation,
audio, and video into
interactive presentation
Used for computer-
based training (CBT)
and Web-based training
(WBT)
Software includes
Toolbook, Authorware,
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
team—Group 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 chart—
Identifies
program’s inputs,
outputs, and
processing steps
p. 686 Fig. 13-24 Next
Step 2 — Design Solution
What is involved in designing the solution?
Object-oriented
Two design
approaches
Devise Structured
solution design, sometimes
algorithm, called top-down design
step-by-step
procedure to
solve problem Programmer
begins with general
design and moves toward
detailed design
p. 687 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
procedure 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
Case control structure
If-then-else control
structure—yields one
of two possibilities:
true or false
p. 689 Fig. 13-28 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
structure—repeats as
long as condition is
true
Do-until control
structure—repeats
until condition is true
p. 689 - 690 Figs. 13-30–13-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?
Programmer checks
Check program logic for correctness
design for accuracy and attempts to uncover
logic errors
Logic error
design flaw
Desk check that causes
programmers use test inaccurate results
data to step through logic
Inspection
Test data systems analyst reviews
sample data that deliverables during the system
mimics real data that development cycle
program will process
p. 693 Next
Step 4 — Implement Design
What is implementation?
Writing the code that translates the design into a program
Syntax—rules that specify how to write instructions
Comments—program 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?
Debugging—locating and
Ensure program runs correctly
correcting syntax and logic
and is error free errors, or bugs
Test copy of program,
called beta, sometimes
used to find bugs
p. 695 - 696 Next
Step 6 — Document Solution
What is involved in documenting the solution?
Programmer performs two activities
Reviews program
code—removes dead
code, program
instructions that Reviews
program never executes documentation
p. 696 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 write and develop
computer programs
Web development and multimedia
development tools
The program development
cycle and the tools used to make
this process efficient
Chapter 13 Complete