Java Software Solutions

Java Software Solutions Lewis and Loftus presentation slides for Java Software Solutions Foundations of Program Design by John Lewis and William Lo...
Author: Vernon Glenn
44 downloads 1 Views 49KB Size
Java Software Solutions

Lewis and Loftus

presentation slides for

Java Software Solutions Foundations of Program Design by John Lewis and William Loftus

Published by Addison-Wesley

Java Software Solutions

Focus of the course

Lewis and Loftus

problem solving program design and implementation object-oriented concepts steps in the development process the Java programming language

• Program development – – – – –

– – – –

– graphics – Graphical User Interfaces – sorting and searching

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

data and operations decisions and loops objects and classes arrays, vectors, strings

• Specific programming concepts and techniques

Chapter 1

2

Java Software Solutions

Lewis and Loftus

Computer Systems -- Introduction

• Before we can dive into programming, we need to understand the fundamentals of computers in general

– – – – –

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

components of a computer how those components interact how computers store and process information computer networks the Internet and the World Wide Web

• Chapter 1 focuses on:

Chapter 1

3

Java Software Solutions

Hardware and Software • Hardware

Lewis and Loftus

– the physical, tangible parts of a computer – keyboard, monitor, wires, chips, disks

• Software – programs and data – a program is a series of instructions

• A computer requires both hardware and software

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• Each is essentially useless without the other Chapter 1

4

Java Software Solutions

Hardware Components

Lewis and Loftus

• Central Processing Unit (CPU) – the chip that executes program commands – Intel Pentium processor, Sun Sparc processor

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

– allow interaction with the user – keyboard, monitor, mouse

• Input / Output devices

Chapter 1

5

Java Software Solutions

Hardware Components • Main memory

Lewis and Loftus

– the primary storage area for programs and data in active use

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

– long-term storage – floppy disks, hard disks, tapes

• Secondary memory devices

Chapter 1

6

Hard disk Floppy disk

Java Software Solutions

Lewis and Loftus

Main memory

CPU

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

Hardware Interaction

Chapter 1

Keyboard

Monitor

7

Java Software Solutions

Software Categories

Lewis and Loftus

controls all machine activities provides the user interface to the computer manages resources such as the CPU and memory Windows 95, Solaris, Mac OS

• Operating system – – – –

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

– generic term for any other kind of software – word processors, missile control systems, games

• Application program

Chapter 1

8

Java Software Solutions

Analog vs. Digital

Lewis and Loftus

• There are two basic ways to store and manage data • Analog

– continuous, in direct proportion to the data represented – example: a mercury thermometer - the mercury rises in direct proportion to the temperature

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

– the information is broken down into pieces, and each piece is represented separately – example: music on a CD

• Digital

Chapter 1

9

Java Software Solutions

Digital Information

Lewis and Loftus

numbers text graphics and pictures audio video program instructions

• Modern computers store all information digitally, including: – – – – – –

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• In some way, all information is digitized - broken down into pieces and represented as numbers

Chapter 1

10

Java Software Solutions

Representing text digitally

Lewis and Loftus

11

• Each character, including spaces, digits, and punctuation, is stored as a number

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

72 105 44 32 72 101 97 116 104 101 114 46

Hi, Heather.

• Corresponding upper and lower case letters are separate characters

Chapter 1

Java Software Solutions

Binary Numbers

Lewis and Loftus

• Once information is digitized, it is represented and stored in memory using the binary number system • A single binary digit (0 or 1) is called a bit

• Devices that store and move information are cheaper and more reliable if they only have to represent two states

12

• A single bit can represent two possible states, like a light bulb that is either on (1) or off (0)

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• Combinations of bits are used to store larger values

Chapter 1

Java Software Solutions

1 bit

2 bits

3 bits

4 bits

Lewis and Loftus

0 1

00 01 10 11

etc.

000 001 010 011 100 101 110 111

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

0000 0001 0010 0011 0100 0101 0110 0111 1000 1001

Bit Permutations

Chapter 1

13

Java Software Solutions

Bit Permutations

Lewis and Loftus

= = = = =

2 items 4 items 8 items 16 items 32 items

14

• Each bit that is added to the string doubles the number of states or items that can be represented

21 22 23 24 25

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

1 bit 2 bits 3 bits 4 bits 5 bits

• N bits can represent 2N unique items

Chapter 1

Java Software Solutions

Computer Architecture

Lewis and Loftus

• Now we can examine the hardware components of a computer in more detail

• The CPU and main memory are the two key hardware components • All other devices can be considered peripherals • Controllers coordinate the activities of specific peripherals

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• Binary information moves between devices across a group of wires called a bus Chapter 1

15

Monitor

Video controller

bus

Java Software Solutions

Lewis and Loftus

Main memory

Disk controller

Floppy disk

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

Hard disk

CPU

Computer Architecture

Chapter 1

Controller

other peripherals

16

Memory

Java Software Solutions

Lewis and Loftus

• Main memory is divided into many memory locations

• Each memory location has an address which uniquely identifies it

• Data is stored in one or more consecutive memory locations

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• On most computers, each memory location holds 8 bits, or 1 byte

Chapter 1

17

Memory

Chapter 1

Java Software Solutions

address 9278 9279 9280 9281 9282 9283 9284 9285 9286

Lewis and Loftus

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

large values are stored in consecutive memory locations

18

Java Software Solutions

Storage Capacity

Lewis and Loftus

• Each memory device has a storage capacity, indicating the number of bytes it can hold

Unit

Symbol

210 = 1024 220 (over 1 mill 230 (over 1 bill 240 (over 1 tril

Number of Bytes

19

KB MB GB TB

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

kilobyte megabyte gigabyte terabyte

• Capacities are expressed in various units of binary storage:

Chapter 1

Memory

Java Software Solutions

Lewis and Loftus

• Main memory is volatile - stored information is lost if the electric power is removed • Secondary memory devices are nonvolatile

• Main memory and disks are random access devices, which mean that information can be reached directly

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• A magnetic tape is a sequential access device since its data is arranged in a linear order - you must get by the intervening data in order to access other information

Chapter 1

20

RAM vs. ROM

Java Software Solutions

Lewis and Loftus

• RAM - Random Access Memory • ROM - Read-Only Memory • The terms RAM and main memory are basically interchangeable

• ROM could be a set of memory chips, or a separate device, such as a CD ROM

• Both RAM and ROM are random access devices!

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• RAM should probably be called Read-Write Memory

Chapter 1

21

Java Software Solutions

Lewis and Loftus

The Central Processing Unit (CPU) • A CPU is also called a microprocessor

• It retrieves, interprets, and executes instructions, one after another, continuously

• This process is called the fetch-decode-execute cycle

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

22

• control unit - coordinates processing steps • registers - small storage areas • arithmetic / logic unit - performs calculations and decisions

• The CPU contains:

Chapter 1

Main memory

Java Software Solutions

Lewis and Loftus

CPU

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

Registers

Control unit

Arithmetic / Logic unit

The Central Processing Unit

Chapter 1

23

Java Software Solutions

Lewis and Loftus

The Central Processing Unit

• The speed of a CPU is controlled by the system clock

24

• The system clock generates an electronic pulse at regular intervals • The pulses coordinate the activities of the CPU

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• The speed is measured in megahertz (MHz)

Chapter 1

Java Software Solutions

A Computer Specification

Lewis and Loftus

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

– 200 MHz Pentium Processor – 32 MB RAM – 2.3 GB Hard Disk – 12x speed CD ROM Drive – 17” Multimedia Video Display with 1280 x 1024 resolution – 33,600 bps Data / Fax Modem

• Consider the following specification for a personal computer:

Chapter 1

25

Monitor

Java Software Solutions

Lewis and Loftus

• The primary output device listed in the specification is a 17” monitor

• The size is measured diagonally, like a television screen

26

• It has multimedia capabilities: text, graphics, video, etc. • It has a resolution of 1280 by 1024 pixels

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• High resolution (more pixels) produces sharper pictures

Chapter 1

Modem

Java Software Solutions

Lewis and Loftus

• Data transfer devices allow information to be sent and received between computers

• The computer specification includes a modem, which allows information to be moved across a telephone line

• It can send and receive fax documents as well as basic data

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• It transfers information at a rate of 33,600 bits per second (bps)

Chapter 1

27

Networks

Java Software Solutions

Lewis and Loftus

28

• A network is two or more computers connected together so that information and resources can be shared

• Most computers are connected to some kind of network

• Each computer has its own network address, which uniquely identifies it among the others

• A file server is a network computer dedicated to storing programs and data that are shared among network users

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• A file server often has a large amount of secondary memory Chapter 1

Java Software Solutions

Network Connections

Lewis and Loftus

• There are many techniques for connecting computers into networks

• Point-to-point connections - each computer is directly connected to each other

• This technique is not feasible for more than a few close machines

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• Adding a new computer requires a new communication line for each computer already in the network

Chapter 1

29

Java Software Solutions

Network Connections

Lewis and Loftus

• Most modern networks share a single communication line

30

• Adding a new computer to the network is relatively easy

• The shared communication line must be managed carefully

• Network users must take turns using the line, which introduces delays

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• Often information is broken down into parts, sent to the receiving machine, and reassembled Chapter 1

Java Software Solutions

Lewis and Loftus

Shared Line

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

Network Connections

Point-to-Point

Chapter 1

31

Java Software Solutions

LANs and WANs

Lewis and Loftus

• A local-area network (LAN) is designed to cover small distances and a small number of computers

• A LAN often connects the machines in a single room or building

• A wide-are network (WAN) connects two or more LANs, often over long distances

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

32

• Individual LANs are usually owned by a single organization, but WANs often connect LANs from many different groups in many different countries

Chapter 1

Java Software Solutions

Lewis and Loftus

LAN

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

Long-distance connection

LANs and WANs

Chapter 1

LAN

33

The Internet

Java Software Solutions

Lewis and Loftus

• The Internet is a WAN which spans the entire planet

• The word Internet comes from the term internetworking, which implies a network of networks

• It started as a United States government project, sponsored by the Advanced Research Projects Agency (ARPA), and was originally called the ARPANET

34

• The Internet grew quickly throughout the 1980s and 90s

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• Less than 600 computers were connected to the Internet in 1983; now there are over 10 million Chapter 1

The Internet

Java Software Solutions

Lewis and Loftus

35

• The software which manages Internet communication is called TCP/IP

• The programs in the Internet Protocol (IP) formats the information for transfer

• The programs in the Transmission Control Protocol (TCP) reassembles messages and handles lost information

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

204.192.116.2

• Each computer on the Internet has a unique IP address, such as:

Chapter 1

The Internet

Java Software Solutions

Lewis and Loftus

• Most computers also have a unique Internet name, which is also referred to as an Internet address: renoir.vill.edu kant.wpllabs.com

• The first part indicates a particular computer (renoir)

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

36

• The rest is the domain name, indicating the organization (vill.edu)

Chapter 1

The Internet

Java Software Solutions

Lewis and Loftus

• The last section of each domain name usually indicates the type of organization: • edu - educational institution • com - commercial business • org - non-profit organization

• Sometimes the suffix indicates the country: • uk - United Kingdom

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• New suffix categories are being considered

Chapter 1

37

Internet

Java Software Solutions

Lewis and Loftus

• A domain name can have several parts

38

• Unique domain names mean that multiple sites can have individual computers with the same local name

• When used, an Internet address is translated to an IP address by software called the Domain Name System (DNS)

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• There is not a one-to-one correspondence between the sections of an IP address and the sections of an Internet address

Chapter 1

Java Software Solutions

The World-Wide Web

Lewis and Loftus

• The World-Wide Web allows many different types of information to be accessed using a common interface

39

• A browser is a program which accesses and presents information: text, graphics, sound, audio, and programs

• A Web document usually contains links to other Web documents, creating a hypermedia environment

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

• The term Web comes from the fact that information is not organized in a linear fashion

Chapter 1

Java Software Solutions

The World-Wide Web

Lewis and Loftus

• Web documents are defined by the HyperText Markup Language (HTML)

• Information on the Web is found using a Uniform Resource Locator (URL): http://www.lycos.com

Copyright 1997 by John Lewis and William Loftus. All rights reserved.

40

• A URL may indicate an HTML document, or some other kind of information

Chapter 1