Lecture #4 Agenda Cell phones off & name signs out Review Questions? Objects The birds-and-the-bees talk.

Slides:



Advertisements
Similar presentations
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall
Advertisements

Unified Modeling Language
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall NEW   NEW 1.
Lecture #3 – Agenda Cell phones off & name signs out –I’ll judge signs on Wednesday next week Quick review & Questions Activity Problem solving.
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall
Lecture #5 Agenda Cell phones off & name signs out Review Questions? UML class diagram introduction Our first class definition!
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall
Introduction To System Analysis and Design
CSE 115 / 503 Introduction to Computer Science I
1 SWE Introduction to Software Engineering Lecture 23 – Architectural Design (Chapter 13)
CSE 115 / 503 Introduction to Computer Science For Majors I Carl Alphonce 219 Bell Hall.
Lecture #3 Agenda Cell phones off & name signs out Questions? Activity Problem solving.
1 UML – an overview What is UML? UML stands for Unified Modelling Language. ”The Unified Modelling Language is a visual language for specifying, constructing.
Where do objects come from? Objects are instances of classes We instantiate classes: –e.g.new chapter1.Terrarium() –There are three parts to this expression:
OOP in Java Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Computer Concepts 5th Edition Parsons/Oja Page 546 CHAPTER 11 Software Engineering Section A PARSONS/OJA Computer Programming.
Fall 2005CSE 115/503 Introduction to Computer Science I1 Lecture #4 Agenda Announcements Review Questions? Classes and objects UML class diagrams Creating.
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall
Bellevue University CIS 205: Introduction to Programming Using C++ Lecture 1: Getting Started by George Lamperti & BU Faculty.
Chapter 1 Software Engineering. Homework ► Read Section 2.2 (pages 79-98) ► Answer questions: ► 7, 8, 11, 12, & 13 on page 134. ► Answer on paper, hand.
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 343 Davis Hall
UML class diagrams (1) UML = Unified Modeling Language We use only class diagrams, not other UML diagrams Purpose: –keep OO concepts separate from implementation.
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 343 Davis Hall
Object-oriented design CS 345 September 20,2002. Unavoidable Complexity Many software systems are very complex: –Many developers –Ongoing lifespan –Large.
CSE 115 Week 2 January , Wednesday Announcements Pick up Syllabus if you need one Pick up Syllabus if you need one Recitation Change Form.
CS 331, Principles of Programming Languages Introduction.
Introduction To System Analysis and design
CS2110: SW Development Methods Design of methods (functions) Class design – CRC cards – UML class and sequence diagrams Software Design.
Mapping Designs to Code Larman, Chapter 20 CSE432 Object Oriented Software Engineering.
CSE115: Introduction to Computer Science I Dr. Carl Alphonce 219 Bell Hall NEW   NEW 1.
SE-1010 Dr. Mark L. Hornick 1 Introduction to Object-Oriented Programming (OOP) Part 1.
CSE115 / CSE503 Introduction to Computer Science I Dr. Carl Alphonce 343 Davis Hall 1.
Session One Introduction. Personal Introduction Role of programmers Robot Examination HUD & HID Uploading Code.
Introduction To System Analysis and Design
An Introduction to Java Chapter 11 Object-Oriented Application Development: Part I.
Your First Java Application Chapter 2. 2 Program Concepts Modern object-oriented programs help us build models to manage the complexity found in a problem.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
The Big Picture of Software Development Glenn Blank Professor of Computer Science Lehigh University.
Lecture 1 Introduction Figures from Lewis, “C# Software Solutions”, Addison Wesley Richard Gesick.
Design Jon Walker. More UML ● What is UML again?
Computing and SE II Chapter 9: Design Methods and Design Models Er-Yu Ding Software Institute, NJU.
1/26 On-demand Learning Series Software Engineering of Web Application - Object-Oriented Development & UML Hunan University, Software School.
Object-oriented Design and Programming CS 2210: SW Development Methods Reading: Chapter 2 of MSD text – Section on UML: look at class diagrams but.
Chapter 10 Classes and Objects In-Depth. Chapter 10 A class provides the foundation for creating specific objects, each of which shares the general attributes,
INM205 Object Oriented Programming in JAVA Dr. Michael Casey Department of Computing.
CS 331, Principles of Programming Languages Chapter 1.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
OOP Review CS 124.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Introduction to Classes, Objects, Methods and Attributes Lecture # 5.
Software Development Introduction
Object-Oriented Design Concepts University of Sunderland.
Design and implementation Chapter 7 – Lecture 1. Design and implementation Software design and implementation is the stage in the software engineering.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Object Oriented Analysis & Design By Rashid Mahmood.
Sadegh Aliakbary Sharif University of Technology Fall 2010.
CPS120: Introduction to Computer Science Lecture 16A Object-Oriented Concepts.
Why don’t programmers have to program in machine code?
Objects as a programming concept
Your First Java Application
Chapter 7 –Implementation Issues
Presentation transcript:

Lecture #4 Agenda Cell phones off & name signs out Review Questions? Objects The birds-and-the-bees talk

Review Software development is an iterative and incremental process. OO software systems are systems of interacting objects. Objects have –properties (think of the counting object last class) –Behaviors (think of the “jumping jack” object)

How do we create objects? –new chapter1.Terrarium() –There are three parts to this expression: new chapter1.Terrarium ()

Let’s try it! We use a tool called Eclipse… …and a plug-in for Eclipse called DrJava DrJava provides an interactions pane

Where do objects come from? (The “birds and bees” lecture) Programmer writes a program in a high-level language like Java: chapter1.Terrarium.java Computers don’t understand programs expressed in high-level languages  ?

Compilation Programmer writes a program in a high-level language like Java: chapter1.Terrarium.java A compiler translates program to an equivalent low-level form that a computer can understand chapter1.Terrarium.class Compiler translates

Runtime Compiler translates Runtime refers to the time during which a program is executing, or running.

Objects exist only at runtime Compiler translates Objects exist only at runtime Objects do not exist while the programmer writes the program, except in their minds.

Huh? If objects are the basic building blocks of object-oriented programs, and programmers don’t directly manipulate objects, what do programmers write? They write class definitions. Objects are instances of classes. Classes are instantiated only at runtime.

So what are class definitions? A class definition is a description of the properties and behaviors that instances of the class will have. Recall that we said a running OO program is a system of interacting objects. Possible relationships between objects are determined by relationships between classes.

UML class diagrams (1) UML = Unified Modeling Language We use only class diagrams, not other UML diagrams Purpose: –keep OO concepts separate from implementation language –operate at a more abstract level than programming language, to avoid making implementation decisions when designing code