Chapter 10
Application Development
By: Freddy Agredo
Chapter objectives
• Describe the application development process
and the role of methodologies, models, and tools
• Compare generations and types of programming language
• Explain how assemblers, compilers, and interpreters
translate source code instructions into executable code
• Describe link editing and contrast static and dynamic linking
• Explain the role of memory maps in symbolic debugging
• Describe integrated application development tools
FIGURE 10.3 Disciplines and iterations in the Unified Process
Courtesy of Course Technology/Cengage Learning
App
Development
Process
Programming Languages
Generations
FIGURE 10.6 Programming language evolution
Courtesy of Course Technology/Cengage Learning
Charles Babbage
Difference Engine - 1822
• Execute
simple
calculations
by changing
gears.
• The first form
of computer
language
was physical
motion.
Eniac - 1942
• Physical motion was replaced by electrical signals
• Followed same principles of Babbage’s engine
• Programmed by presetting switches and rewiring
the entire system for each new calculation
Jon Von Neumman - 1945
1. Computer hardware should be simple and able
to read complex instructions
2. Use small blocks of code that could be jumped
to in any order instead of chronologically
IF THEN FOR
Fortran – 1957
FORmula TRANslating system
IF DO GOTO
TRUE / FALSO
Cobol – 1960
COmmon Business Oriented Language .
Numbers Input /Output
ALGOL – 1958
ALGOrithmic Language
PASCAL
C
JAVA
C++
C PROGRAMMING - 1972
• Dynamic arrays and group of variables
not included in Pascal led to its downfall
• Fast and powerful but harder to read
• Developed for UNIX
• UNIX gave advantages to C:
multitasking, forking, dynamic variables, interrupt
handling and strong low-level input / output
• Commonly used to program operating systems as:
UNIX, Windows, OS and Linux
Object Oriented
Programming
• Objects are pieces of data
• Extensions created called “C with Classes”
C++
• Same speed as C
• Able to run in many computers
• Hundreds of instances simultaneously
Java
• Interactive TV lead to create
Java by Sun Microsystems
• Netscape: first licensed
browser
• Serious optimization
problems and programs
written ran very slowly
Compilation
FIGURE 10.10 Application development with program editor, compiler, and link editor
Courtesy of Course Technology/Cengage Learning

CDA4411: Chapter 10 - Application Development

  • 1.
  • 2.
    Chapter objectives • Describethe application development process and the role of methodologies, models, and tools • Compare generations and types of programming language • Explain how assemblers, compilers, and interpreters translate source code instructions into executable code • Describe link editing and contrast static and dynamic linking • Explain the role of memory maps in symbolic debugging • Describe integrated application development tools
  • 4.
    FIGURE 10.3 Disciplinesand iterations in the Unified Process Courtesy of Course Technology/Cengage Learning
  • 5.
  • 9.
    Programming Languages Generations FIGURE 10.6Programming language evolution Courtesy of Course Technology/Cengage Learning
  • 10.
    Charles Babbage Difference Engine- 1822 • Execute simple calculations by changing gears. • The first form of computer language was physical motion.
  • 11.
    Eniac - 1942 •Physical motion was replaced by electrical signals • Followed same principles of Babbage’s engine • Programmed by presetting switches and rewiring the entire system for each new calculation
  • 12.
    Jon Von Neumman- 1945 1. Computer hardware should be simple and able to read complex instructions 2. Use small blocks of code that could be jumped to in any order instead of chronologically IF THEN FOR
  • 13.
    Fortran – 1957 FORmulaTRANslating system IF DO GOTO TRUE / FALSO
  • 14.
    Cobol – 1960 COmmonBusiness Oriented Language . Numbers Input /Output
  • 15.
    ALGOL – 1958 ALGOrithmicLanguage PASCAL C JAVA C++
  • 16.
    C PROGRAMMING -1972 • Dynamic arrays and group of variables not included in Pascal led to its downfall • Fast and powerful but harder to read • Developed for UNIX • UNIX gave advantages to C: multitasking, forking, dynamic variables, interrupt handling and strong low-level input / output • Commonly used to program operating systems as: UNIX, Windows, OS and Linux
  • 17.
    Object Oriented Programming • Objectsare pieces of data • Extensions created called “C with Classes” C++ • Same speed as C • Able to run in many computers • Hundreds of instances simultaneously
  • 18.
    Java • Interactive TVlead to create Java by Sun Microsystems • Netscape: first licensed browser • Serious optimization problems and programs written ran very slowly
  • 19.
    Compilation FIGURE 10.10 Applicationdevelopment with program editor, compiler, and link editor Courtesy of Course Technology/Cengage Learning