Download PowerPoint form - University of Wisconsin

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Library (computing) wikipedia , lookup

Name mangling wikipedia , lookup

Structured programming wikipedia , lookup

Resource management (computing) wikipedia , lookup

Falcon (programming language) wikipedia , lookup

Abstraction (computer science) wikipedia , lookup

Smalltalk wikipedia , lookup

Class (computer programming) wikipedia , lookup

C Sharp syntax wikipedia , lookup

Software quality wikipedia , lookup

Software bug wikipedia , lookup

Application Interface Specification wikipedia , lookup

C++ wikipedia , lookup

Design Patterns wikipedia , lookup

C Sharp (programming language) wikipedia , lookup

Object-oriented programming wikipedia , lookup

Transcript
Lecture 1
Introduction
Your world is filled with objects.
Many of these objects are controlled by computers.
Computers rely on ___________ to determine their execution.
objects
Modern computer programming is built from the concept of objects
(Object-Oriented Programming OOP).
Definition (from a computer science perspective)
An object is something that has
• ________ - the object’s attributes or characteristics
• ________ - any action that is performed by or upon the object
example objects
a smart watch
your student records
1-2
What is the behavior of this object?
What are possible attributes for this object?
objects interact with other objects
What additional objects are essential in order to place a cell phone call?
objects can be made from other objects
What are the component parts of a cell phone?
1-3
Every object belongs to a group.
membership in the group determines behavior & attributes
In software such a group of objects is called a class.
Every object must belong to some class.
for example
 The white oak in your front yard belongs to the class of __________.
 Wisconsin is an object of type ________ .
 Your new Tesla is an object from the ________ class.
1-4
Write software for each class.
(___________)
Implementation
Discover & design objects/classes
(software ____________)
Design
test,
review,
debug
Analysis
Learn what the software is supposed to do
(software ______________)
1-5
discover the objects and design/specify classes for the objects
A class diagram is a picture of the members of a
class. The notation used here is
borrowed from the Universal Modeling
Language (UML).
Class Name
attributes/instance variables
state
operations/methods
behavior
FitnessTracker
Example
1-6
public class FitnessTracker{
private
private
private
private
private
boolean isOn;
int stepCount;
int stepsPerMile;
int stairStepCount;
HourAndMinute time;
public void turnOn() {
isOn = true;
}
public void turnOff() {
isOn = false;
}
// There is code omitted from here
}
1-7
A ____________ is a collection of instructions that can be executed by a computer.
Software is one or more programs or portions of programs.
Programming is the act of composing software. Synonym: software development
Two Characteristics of Good Software
A correct program is one that properly performs the intended task.
A readable program is easily understood by other programmers.
Each program follows the rules of some programming _________.
In this course the programming language that is used is called Java.
1-8
Every programming language has rules for. . .
syntax
Syntax is the form of the program. (grammar, punctuation, spelling)
semantics
Semantics refers to the meaning of the program.
The hungry student ate a Chicago-style pizza.
Does the following represent a change in syntax or semantics?
The hungry student consumed one Chicago-style pizza.
Does the following represent a change in syntax or semantics?
The hungry students cooked two stuffed crust pizzas.
Find the errors below. Are they syntactic or semantic errors?
Student the HuNgRy eated a Cicago-style pizzas$
1-9
Action
Programmer types the
software into the computer.
Software Tool
Deliverable
Text editor
Source code file
( className.java )
The software is translated
into a form that is “understood”
by the computer.
Java compiler
Bytecode file
( className.class )
The program executes.
Java Virtual Machine
1-10