Download

Chapter 8: Introduction to High-Level Language Programming






Advertisement
/ 51 []
Download Presentation
Comments
jered
From:
|  
(1115) |   (0) |   (0)
Views: 48 | Added:
Rate Presentation: 0 0
Description:
Chapter 8: Introduction to High-Level Language Programming. Invitation to Computer Science, Java Version, Third Edition. Objectives. In this chapter, you will learn about Where do we stand? High-level languages Introduction to Java Virtual data storage Statement types.
Chapter 8: Introduction to High-Level Language Programming

An Image/Link below is provided (as is) to

Download Policy: Content on the Website is provided to you AS IS for your information and personal use only and may not be sold or licensed nor shared on other sites. SlideServe reserves the right to change this policy at anytime. While downloading, If for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.











- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -




Chapter 8 introduction to high level language programmingSlide 1

Chapter 8: Introduction to High-Level Language Programming

Invitation to Computer Science,

Java Version, Third Edition

ObjectivesSlide 2

Objectives

In this chapter, you will learn about

  • Where do we stand?

  • High-level languages

  • Introduction to Java

  • Virtual data storage

  • Statement types

Invitation to Computer Science, Java Version, Third Edition

Objectives continuedSlide 3

Objectives (continued)

  • Meeting expectations

  • Managing complexity

  • Object-oriented programming

  • Graphical programming

  • The big picture: Software engineering

Invitation to Computer Science, Java Version, Third Edition

Where do we standSlide 4

Where Do We Stand?

  • Early days of computing

    • Programmers were satisfied with assembly language

      • Programs mostly written by very technically oriented people

  • Later decades

    • Programmers demanded a more comfortable programming environment

      • Programs were now also written by “nontechie” people

Invitation to Computer Science, Java Version, Third Edition

High level languagesSlide 5

High-Level Languages

  • High-level programming languages

    • Called third-generation languages

    • Created to overcome deficiencies of assembly language

  • Expectations of a high-level language program

    • The programmer need not manage the details of the movement of data items within memory nor exactly where those items are stored

Invitation to Computer Science, Java Version, Third Edition

High level languages continuedSlide 6

High-level Languages (continued)

  • Expectations of a high-level language program (continued)

    • Programmer can take a macroscopic view of tasks; “primitive operations” can be larger

    • Program will be portable

    • Programming statements will be closer to standard English and use standard mathematical notation

Invitation to Computer Science, Java Version, Third Edition

Introduction to java a simple java programSlide 7

Introduction to Java: A Simple Java Program

  • Comments

    • Give information to human readers of code

  • Class header

    • Announces that a class is about to be defined

  • Class

    • A collection of methods

  • Method

    • A section of code that performs a service

Invitation to Computer Science, Java Version, Third Edition

Chapter 8 introduction to high level language programmingSlide 8

Figure 8.2 A Simple Java Program

Invitation to Computer Science, Java Version, Third Edition

Running a java programSlide 9

Running a Java Program

  • File containing the Java code

    • Same name as the class

    • File extension .java

    • Example: TravelPlanner.java

  • Running a Java program

    • Program compiled

      • Example: File TravelPlanner.class created

    • Translation to object code completed; program linked, loaded, and executed

Invitation to Computer Science, Java Version, Third Edition

Virtual data storageSlide 10

Virtual Data Storage

  • Identifiers

    • Names in a programming language

  • Keyword

    • Has a special meaning in Java

  • Java is a case-sensitive, free-format language

  • Variable

    • A named location in memory

    • Must be declared before it can be used

Invitation to Computer Science, Java Version, Third Edition

Chapter 8 introduction to high level language programmingSlide 11

Figure 8.4

Some of the Java Primitive Data Types

Invitation to Computer Science, Java Version, Third Edition

Virtual data storage continuedSlide 12

Virtual Data Storage (continued)

  • An array

    • Groups together a collection of memory locations, all storing data of the same type

Figure 8.5

A 12-Element Array Hits

Invitation to Computer Science, Java Version, Third Edition

Statement typesSlide 13

Statement Types

  • Input/output statements

    • Input statement

      • Collects a specific value from the user for a variable within the program

    • Output statement

      • Writes a message or the value of a program variable to the user’s screen or to a file

Invitation to Computer Science, Java Version, Third Edition

Statement types continuedSlide 14

Statement Types (continued)

  • Assignment statement

    • Assigns a value to a program variable

  • Control statement

    • Directs the flow of control

      • Can cause it to deviate from the usual sequential flow

Invitation to Computer Science, Java Version, Third Edition

Input statementsSlide 15

Input Statements

  • A prompt

    • A message that tells the user what kind of input the program wants

  • Console class

    • Not a standard Java class; written for this book

    • Can be used to handle both the prompt and the retrieval of the value in one statement

Invitation to Computer Science, Java Version, Third Edition

Input statements continuedSlide 16

Input Statements (continued)

  • Methods

    • readInt

    • readDouble

    • readChar

  • Syntax

    variable1 = Console.readInt(prompt);

    variable2 = Console.readDouble(prompt);

    variable3 = Console.readChar(prompt);

Invitation to Computer Science, Java Version, Third Edition

Output statementsSlide 17

Output Statements

  • Output to the screen

    System.out.println(string);

  • The string can be

    • Empty

      System.out.println();

    • Literal string

      System.out.println("Here's your answer." );

    • Composed of two or more items

      System.out.println("Give me" + 5);

Invitation to Computer Science, Java Version, Third Edition

The assignment statementSlide 18

The Assignment Statement

  • General form

    variable = expression;

  • Expression is evaluated first; the result is written into the memory location specified on the left

Invitation to Computer Science, Java Version, Third Edition

The assignment statement continuedSlide 19

The Assignment Statement (continued)

  • Examples

    B = 2;

    • Suppose that B is an integer variable

      A = B + C;

    • Suppose that A, B, and C are integer variables

      Letter = 'm';

    • Suppose that Letter is a variable of type char

Invitation to Computer Science, Java Version, Third Edition

Control statementsSlide 20

Control Statements

  • Types of control mechanisms

    • Sequential

      • Instructions are executed in order

    • Conditional

      • The choice of which instructions to execute next depends on some condition

    • Looping

      • A group of instructions may be executed many times

Invitation to Computer Science, Java Version, Third Edition

Control statements continuedSlide 21

Control Statements (continued)

  • Sequential is default mode of execution

  • Conditional flow of control

    • Evaluation of a Boolean condition (also called a Boolean expression)

    • The programming statement to execute next is based on the value of the Boolean condition (true or false)

Invitation to Computer Science, Java Version, Third Edition

Control statements continued1Slide 22

Control Statements (continued)

  • Conditional flow of control (continued)

    • if-else statement

      if (Boolean condition)

      S1;

      else

      S2;

    • if variation of the if-else statement

      if (Boolean condition)

      S1;

Invitation to Computer Science, Java Version, Third Edition

Chapter 8 introduction to high level language programmingSlide 23

Figure 8.10

Conditional Flow of Control

(If-Else)

Invitation to Computer Science, Java Version, Third Edition

Chapter 8 introduction to high level language programmingSlide 24

Figure 8.11

If-Else with Empty Else

Invitation to Computer Science, Java Version, Third Edition

Control statements continued2Slide 25

Control Statements (continued)

  • Looping (iteration)

    • The loop body may be executed repeatedly based on the value of the Boolean condition

    • while statement

      while (Boolean condition)

      S1;

Invitation to Computer Science, Java Version, Third Edition

Chapter 8 introduction to high level language programmingSlide 26

Figure 8.13

While Loop

Invitation to Computer Science, Java Version, Third Edition

Meeting expectationsSlide 27

Meeting Expectations

  • Java meets the four expectations for a high-level programming language

  • Expectations

    • The programmer need not manage the details of the movement of data items within memory nor pay any attention to where specifically they are stored

Invitation to Computer Science, Java Version, Third Edition

Meeting expectations continuedSlide 28

Meeting Expectations (continued)

  • Expectations (continued)

    • The programmer can take a macroscopic view of tasks, thinking at a higher level of problem solving

    • Programs written in high-level languages will be portable rather than machine-specific

    • Programming statements in a high-level language

      • Will be closer to standard English

      • Will use standard mathematical notation

Invitation to Computer Science, Java Version, Third Edition

Managing complexity divide and conquerSlide 29

Managing Complexity: Divide and Conquer

  • Divide and conquer

    • Divide the problem into small pieces

    • In a computer program

      • Divide the code into modules or subprograms, each of which does some part of the overall task

      • Empower these modules to work together to solve the original problem

Invitation to Computer Science, Java Version, Third Edition

Chapter 8 introduction to high level language programmingSlide 30

Figure 8.20 Structure Charts

Invitation to Computer Science, Java Version, Third Edition

Using methodsSlide 31

Using Methods

  • Method

    • A module of code in Java

    • Named using ordinary Java identifiers

    • By custom, name starts with a lowercase letter

Invitation to Computer Science, Java Version, Third Edition

Using methods continuedSlide 32

Using Methods (continued)

  • Two types of methods

    • void method

      • Does not pass any value back to the main method

    • nonvoid method

      • Returns a single new value back to the main method

  • Overall form of a method invocation

    class-identifier.method-identifier(argument list)

Invitation to Computer Science, Java Version, Third Edition

Writing methodsSlide 33

Writing Methods

  • General form of the method header

    scope-indicator return-indicator identifier(parameter list)

  • Arguments in Java are passed by value

  • A variable declared within a method can be used only within that method

  • Return statement

    • Syntax

      return expression;

Invitation to Computer Science, Java Version, Third Edition

Chapter 8 introduction to high level language programmingSlide 34

Figure 8.27

Some Java Terminology

Invitation to Computer Science, Java Version, Third Edition

Object oriented programming what is itSlide 35

Object-Oriented Programming: What Is It?

  • Object-oriented programming (OOP)

    • A program is a simulation of some part of the world that is the domain of interest

    • Each object is an example drawn from a class of similar objects

  • Key elements of OOP

    • Encapsulation

      • A class consists of its subtask modules and its properties, and both components are “encapsulated” with the class

Invitation to Computer Science, Java Version, Third Edition

What is it continuedSlide 36

What Is It? (continued)

  • Key elements of OOP (continued)

    • Inheritance

      • Once a class A of objects is defined, a class B of objects can be defined as a “subclass” of A

    • Polymorphism

      • One name, the name of the service to be performed, has several meanings, depending on the class of the object providing the service

Invitation to Computer Science, Java Version, Third Edition

Java and oopSlide 37

Java and OOP

  • Java is an object-oriented programming language

  • Static method

    • Can be invoked by giving the class name, a dot, the method name, and a list of arguments

  • Objects: Instances of a class

  • Instance variables: Properties

  • Instance methods: Services

Invitation to Computer Science, Java Version, Third Edition

Java and oop continuedSlide 38

Java and OOP (continued)

  • Syntax to request an object to invoke a method

    object-identifier.method-identifier(argument list)

  • Calling object

    • The object that invokes a method

Invitation to Computer Science, Java Version, Third Edition

What have we gainedSlide 39

What Have We Gained?

  • Two major advantages of OOP

    • Software reuse

    • A more natural “world view”

Invitation to Computer Science, Java Version, Third Edition

Graphical programming graphics hardwareSlide 40

Graphical Programming: Graphics Hardware

  • Bitmapped display

    • The screen is made up of thousands of individual picture elements, or pixels, laid out in a two-dimensional grid

  • Frame buffer

    • Memory that stores the actual screen image

  • Terminal hardware displays the frame buffer value of every individual pixel on the screen

Invitation to Computer Science, Java Version, Third Edition

Chapter 8 introduction to high level language programmingSlide 41

Figure 8.34

Pixel Numbering System in a Bitmapped Display

Invitation to Computer Science, Java Version, Third Edition

Graphics softwareSlide 42

Graphics Software

  • Graphics library

    • Contains a collection of software routines that control the setting and clearing of pixels

  • Abstract Windowing Toolkit (AWT)

    • Contains routines that allow users to create powerful interfaces

  • Swing components

    • Even more powerful GUI components than AWT

Invitation to Computer Science, Java Version, Third Edition

Graphics software continuedSlide 43

Graphics Software (continued)

  • Graphics class

    • Contains drawing commands that allow you to

      • Draw geometric shapes (lines, rectangles, ovals, polygons, and so on)

      • Set, change, and define colors

      • Fill in or shade objects

      • Create text in a range of fonts and sizes

      • Produce graphs and charts

Invitation to Computer Science, Java Version, Third Edition

The big picture software engineeringSlide 44

The Big Picture: Software Engineering

  • Software life cycle

    • The overall sequence of steps needed to complete a large-scale software project

    • Implementation represents a relatively small part of the cycle

Invitation to Computer Science, Java Version, Third Edition

Chapter 8 introduction to high level language programmingSlide 45

Figure 8.36

Steps in the Software Development Life Cycle

Invitation to Computer Science, Java Version, Third Edition

Scaling upSlide 46

Scaling Up

  • Programs written by students

    • No longer than a few hundred lines

  • Real-world programs

    • 2, 3, or 4 orders of magnitude larger

  • Large-scale software development

    • Extensive planning and design needed

    • A team of programmers needed

    • Software engineering

Invitation to Computer Science, Java Version, Third Edition

The software life cycleSlide 47

The Software Life Cycle

  • Each step in the software development life cycle

    • Has a specific purpose and activities

    • Should result in a written document

  • The feasibility study

  • Problem specification

  • Program design

Invitation to Computer Science, Java Version, Third Edition

The software life cycle continuedSlide 48

The Software Life Cycle (continued)

  • Algorithm selection or development, and analysis

  • Coding

  • Debugging

  • Testing, verification, and benchmarking

  • Documentation

  • Maintenance

Invitation to Computer Science, Java Version, Third Edition

Modern environmentsSlide 49

Modern Environments

  • Integrated Development Environment (IDE) speeds program development by providing

    • A text editor

    • A file manager

    • A compiler

    • A linker and loader

    • Tools for debugging

Invitation to Computer Science, Java Version, Third Edition

SummarySlide 50

Summary

  • In a high-level language, the programmer

    • Need not manage storage nor movement of data values in memory

    • Can use more powerful program instructions that are more like natural language

    • Can write a much more portable program

  • Java is an object-oriented, high-level programming language

Invitation to Computer Science, Java Version, Third Edition

Summary continuedSlide 51

Summary (continued)

  • In Java, an if-else statement can be used to create a conditional flow of control

  • In Java, a while loop can be used for iteration

  • Software life cycle: Overall sequence of steps needed to complete a large-scale software project

Invitation to Computer Science, Java Version, Third Edition


Copyright © 2014 SlideServe. All rights reserved | Powered By DigitalOfficePro