Chapter 13 : Programming
Languages and Program
Development
Chapter 13 Objectives
Describe
Describevarious
variousways
waystotodevelop
developWeb
Webpages
pages
including HTML, scripting languages,
including HTML, scripting languages,
DHTML,
DHTML,XML,XML,WML,
WML,and andWeb
Webpage
page
Differentiate authoring software
Differentiatebetween
betweenmachine
machine authoring software
and assembly languages
and assembly languages
Identify
Identifythe
theuses
usesof
ofpopular
popularmultimedia
multimedia
authoring programs
authoring programs
Identify
Identifyand
anddiscuss
discussthe
thepurpose
purposeof
of
procedural
proceduralprogramming
programminglanguages
languages
List
Listthe
thesix
sixsteps
stepsin
inthe
theprogram
program
development cycle
development cycle
Identify
Identifyand
anddiscuss
discussthe
thecharacteristics
characteristicsof
of
object-oriented
object-orientedprogramming
programminglanguages
languagesand
and
program
programdevelopment
developmenttools
tools Differentiate
Differentiatebetween
betweenstructured
structureddesign
designand
and
object-oriented design
object-oriented design
Identify
Identifythe
theuses
usesof
ofother
otherprogramming
programming
languages
languages and other programdevelopment
and other program development
tools
tools Explain
Explainthe
thebasic
basiccontrol
controlstructures
structuresand
and
design
designtools
toolsused
usedin
indesigning
designingsolutions
solutionsto
to
programming
programmingproblems
problems
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
Computer Programs and Programming Languages
• What are low-level languages and high-level languages?
Low-level
Low-level High-level
High-level
language
language language
language
Machine-dependent
Machine-dependent Often
Oftenmachine-independent
machine-independent
runs
runsonly
onlyon
onone
onetype
typeof
ofcomputer
computer can
canrunrunon
onmany
manydifferent
different
types
typesofofcomputers
computersand
andoperating
operating
Machine
Machineand
andassembly
assemblylanguages
languages systems
systems
are
arelow-level
low-level
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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)
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
Procedural Languages
• What is a compiler?
Program that
converts entire
source
program into
machine
language
before
executing it
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
Procedural Languages
• What is an interpreter?
Program that
translates and
executes one
program code
statement at
a time
Does not produce
object program
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
Procedural Languages
What is COBOL?
Designed for business applications
English-like statements make code easy to read, write,
and maintain
COmmon
Business-Oriented
Language
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
Procedural Languages
• What is C?
Powerful language originally designed to write system
software
Requires professional programming skills
COBOL
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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)
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
to define the
action of each
command button.
Step 4. The developer
CT002-4-0 Computing and IT tests the program. Computer Historical Perspective & Future Trends
Object-Oriented Programming Languages
• What is Delphi?
Powerful visual programming tool
Ideal for large-scale enterprise and Web applications
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
Object-Oriented Programming Languages
• What is PowerBuilder?
Another powerful visual programming tool
Best suited for Web-based and large-scale
enterprise object-oriented applications
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
Other Programming Languages
What are nonprocedural languages and
program development tools?
Nonprocedural
Nonprocedural Program
ProgramDevelopment
Development
Language
Language Tools
The Tools
Theprogrammer
programmerwrites
writesEnglish-
English- User-friendly
like User-friendlyprograms
programs
likeinstructions
instructionsor
orinteracts
interacts designed
with designedtotoassist
assistboth
both
withaavisual
visualenvironment
environmenttoto programmers
retrieve programmersand andusers
usersinin
retrievedata
datafrom
fromfiles
filesororaa creating
database creatingprograms
programs
database
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
Other Program Development Tools
• What is a macro?
Series of statements that instructs an application how
to complete a task
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
Web Page Development
• What is HTML (Hypertext Markup Language)?
Used to create Web pages
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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)
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
Web Page Development
• What is dynamic HTML (DHTML)?
Allows developers to
include more graphical
interest and interactivity
in Web page
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
Web Page Development
• What is Web page authoring software?
Creates sophisticated Web pages without using HTML
Generates HTML
Dreamweaver Expression Flash
Web
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends
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
CT002-4-0 Computing and IT Computer Historical Perspective & Future Trends