Chapter 11 Learning Objectives

SECTION A

After reading Section A, you should be able to:

  • define the term "computer program"
  • categorize small-l, medium-, and large-sized programs according to department of Defense standards
  • describe the similarities and differences in the roles of computer programmers, systems analysts, and software engineers
  • explain how the terms "code" and "coding" relate to computer programming
  • provide examples of computer programming languages
  • identify keywords, parameters, and syntax elements in a sample line of program code
  • explain the differences between high-level and low-level programming languages
  • discuss the characteristics of each generation of programming languages
  • define the term "programming paradigm" and discuss how it relates to programming languages
  • list the three elements of a problem statement
  • explain how "assumptions" and "known information" relate to planning a computer program
  • compose a concise problem statement when given information about a simple problem that can be solved by creating a computer program
  • explain the advantages and disadvantages of generic text editors, program editors
  • explain how using a visual development environment (VDE) differs from the traditional approach to coding computer programs
  • provide examples of "events" that are associated with various controls in a graphical user interface
  • explain syntax, runtime, and logic errors
  • discuss how programmers can locate errors in a program
  • explain how program documentation and remarks help streamline the process of debugging and modifying programs

SECTION B

After reading Section B, you should be able to:

  • define the term "algorithm"
  • explain how programmers determine the correct algorithms to use for a computer program
  • identify algorithms expressed as pseudocode, structured English, and flowcharts
  • discuss the advantages of performing program walkthrough
  • define the term "sequential execution" as it relates to computer programs
  • explain the way sequence, selection, and repetition control structures work
  • explain the advantages and disadvantages of the procedural paradigm
  • provide examples of at least four programming languages that are typically used for procedural programs

SECTION C

After reading Section C, you should be able to:

  • explain how the object-oriented paradigm differs from the procedural programming paradigm
  • distinguish between "objects" and "classes"
  • explain the difference between public and private attributes
  • draw a simple UML diagram to illustrate classes, attributes and methods for an object-oriented program
  • discuss how inheritance relates to classes and why inheritance is such a key concept for making object-oriented programming efficient
  • provide examples of some tasks that methods might carry out in an object-oriented program
  • explain the relationship between messages and methods
  • explain how polymorphism relates to methods
  • list at least four programming languages that are typically used for object-oriented programming
  • discuss the advantages and disadvantages of the OO paradigm

SECTION D

After reading Section D, you should be able to:

  • explain how the declarative paradigm differs from the procedural programming paradigm
  • provide some examples of simple "facts" written in Prolog syntax
  • explain how a decision table might be used by a programmer who is planning a program that involves complex logic
  • given a simple Prolog statement, identify the predicate, argument, and syntax elements
  • distinguish between a constant and a variable
  • explain how instantiation and backtracking help solve goals in a Prolog program
  • discuss the unique challenges of debugging a Prolog program
  • provide examples of some problems that would be more suitable for the declarative paradigm than for the object-oriented or procedural paradigms
  • explain the advantages and disadvantages of declarative languages

TechTalk

  • discuss why a compiler is one of the most important programming tools
  • explain the advantages and disadvantages of compiles and interpreters from a programmer’s viewpoint
  • explain the difference between object code and bytecode
  • explain the similarities in the Java Virtual Machine and Microsoft CLR
  • explain the significance of Microsoft’s .NET framework
  • discuss the why components and APIs are so important to today’s programmers
  • differentiate between an SDK and an IDE
 

  
Use your browser's Back button to return to the list of InfoWebs for the chapter. Click any one of the links below to access the home page for your textbook.
 

 

 
  New Perspectives on Computer Concepts 9th Edition New Perspectives on
Computer Concepts
8th Edition
New Perspectives on
Computer Concepts
7th Edition
Computer Concepts Illustrated 6th Edition Computer Concepts
Illustrated
5th Edition
Copyright 2004 by MediaTechnics Corporation