0% found this document useful (0 votes)
58 views46 pages

An Introduction To Object-Oriented Programming

This document provides an introduction to object-oriented programming concepts. It describes programs and the software development cycle. Key phases of the development cycle include analyzing requirements, designing a solution, implementing the design, testing the solution, and documenting it. The document differentiates between procedure-oriented and object-oriented approaches. With object-oriented programming, the emphasis is on objects and the events that occur to them. Core concepts explained include objects, classes, encapsulation, inheritance, and polymorphism. Examples are provided to illustrate these concepts.

Uploaded by

zombie
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
58 views46 pages

An Introduction To Object-Oriented Programming

This document provides an introduction to object-oriented programming concepts. It describes programs and the software development cycle. Key phases of the development cycle include analyzing requirements, designing a solution, implementing the design, testing the solution, and documenting it. The document differentiates between procedure-oriented and object-oriented approaches. With object-oriented programming, the emphasis is on objects and the events that occur to them. Core concepts explained include objects, classes, encapsulation, inheritance, and polymorphism. Examples are provided to illustrate these concepts.

Uploaded by

zombie
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 46

An Introduction to Object-Oriented

Programming

1
Objectives

• Describe programs, programming, applications, and


program development
• Identify each of the phases in the software
development cycle
• Define an algorithm
• Differentiate between procedure-oriented approach
and object oriented approach of solving problems
• Define objects, attributes, and methods
• Explain object-oriented programming (OOP) and
object-oriented design (OOD)

2
What are programs? (revisited)
• A program is a step-by-step series of instructions
• Programming is the process of writing these instructions
• Programmers, or software developers, design and write
programs
• An application is a collection of one or more programs
• Program development is the process of writing
applications

3
Programming and
Application Development
• Store program
• Machine Cycle
• Fetch
• Decode
• Execute
• Stored

4
Application Types
• The Pacific Greetings Demo program from
Lecture “Introduction to VB.NET” is just an
example of a Windows Based application.

• Let’s see example of other types of


applications that can be writte.

5
Application Types
• Windows Applications

6
Application Types
• Web Applications

7
Application Types
• Console Applications

8
Application Types
• Windows Services

9
Application Types
• Web Services

10
Application Types
• Components

11
The Development Cycle

12
13
Phase 1 – Analyze Requirements
• Verify the requirements are complete
• Make the initial determination that it is
possible to solve the problem using a program
• List input and output data required
• Determine whether the input data is available
for testing

14
Phase 1 – Analyze Requirements
• Ensure that the information provided explains
how to convert the input data into output data
so that a solution, or algorithm, can be
developed

15
16
Phase 2 – Design Solution
• Develop a logical model that illustrates the
sequence of steps you will take to solve the
problem
• Objects are smaller pieces of a program
• Object model
• Attributes
• Methods

17
Phase 2 – Design Solution
• Object Model

18
Phase 2 – Design Solution
• Flowcharts graphically represent the logic
used to develop an algorithm
• Control structures, included in flowcharts,
allow the programmer to specify the code that
will execute only if a condition is met
• Pseudocode expresses the step-by-step
instructions using keywords and depicts
logical groupings or structures using
indentation

19
20
Control Structures

21
Pseudocode

22
Storyboard

23
Phase 3 – Validate Design
• Validate, or check, the program design
• Step through the solution with test data
• Compare the program design with the original
requirements

24
Phase 4 – Implement Design
• Write the code that translates the design into
a program
• Create the user interface
• Create comments, or notes, within the code
that explains the purpose of the code
• Test the code as it is written

25
Phase 4 – Implement Design

26
Phase 5 – Test Solution
• Test plan
• Test cases
• Integration testing
• Boundary values

27
Phase 6 – Document Solution
• Includes the requirements documents,
program design documents, user interface
documents, and documentation of the code
• Code should be archived electronically

28
Solving the Problem Using a
Procedure-Oriented Approach
• Emphasis of a program is on how to
accomplish a task
• A flowchart uses standardized symbols to
show the steps needed to solve a problem
• Pseudocode uses English phrases to
describe the required steps
• User has little, if any, control

29
Solving the Problem Using a
Procedure-Oriented Approach
• Computer programming is about two things:
• Data and Processes that are performed on
the data
• Eg. From the Skate-Away Sales application:
• Data: all the information regarding the sale
• Processes:
• calculating and displaying the totals
• Reseting the data when the user wants to enter
new data.
30
Solving the Problem Using a
Procedure-Oriented Approach
• In procedure oriented approach:
• Data and processes are viewed as separate
• Data is stored in the text property of objects
• Procedures access that data and process it.

31
Solving the Problem Using
an Object-Oriented (OO)
Approach
• Emphasis of a program is on the objects
included in the interface and the events that
occur on those objects
• You will use a TOE (Task, Object, Event)
chart to assist you in planning your object-
oriented programs
• User has a lot of control

32
OOP Terminology
• Object
• Anything that can be seen touched, or used
• Has Attributes - also called Properties
• Characteristics that describe the object
• Has Behaviors - also called Methods
• Operations the object is capable of performing

• Class
• Pattern or blueprint used to create an object

33
OOP Terminology (continued)
• Encapsulation
• Combination of attributes and behaviors that
describe object created by class
• Abstraction
• Hiding internal details of object from user
• Inheritance
• Ability to create one class from another
• Polymorphism
• Same instruction carried out differently
depending on the object giving the instruction
34
OOP Terminology (continued)
• Program is composed of objects
• Each object encapsulates both its data and its
processes
• Objects send messages to each other to do all
the work in the program
• Data are also called properties or attributes
• Processes are also called methods or
behaviors

35
OOP Terminology (continued)
• What is an object?
• Each object is a member of a class
• The class describes the properties and methods
that each member possesses
• It describes the general pattern for every object
in the class
• Analogy: A cookie cutter

36
OOP Terminology (continued)
• Object
• A specific entity that follows the pattern of the
rest of the class
• Analogy: A cookie (from the cookie cutter)

• Note that an OOP is composed of objects, not


classes
• Analogy: Cookie cutters are great, but you
can’t eat ‘em!

37
OOP Terminology (continued)
• Classes and objects in the real world
• Class: Car
• Every car has “properties” (# of doors, engine
size, color)
• Every car has “methods” (drive, stop, turn on,
turn-off)
• Object: My car
• My car has 4 doors, a 1.6L engine, and is white
• My car can drive, stop, turn on, and turn off

38
Thought problem #1:
Consider students in this class. What are
some properties and methods of students?
What’s an example of a student object?

39
OOP (continued)
• You know a lot of OOP already!
• It may seem scary to have all this “new” stuff
thrown at you, but you’re more familiar with
OOP than you think just from using VB.NET

• Every type of control in the toolbox is a class


• Every control you’ve put on a form is an
object

40
OOP (continued)
• For example: in the Skate-Away application:
• txtName object is derived from TextBox
Class.
• This is clearly illustrated in the properties
window.

41
OOP (continued)
• And in the forms .Designer.vb file.

42
OOP (continued)
• Note that every member of the textbox class has the
same set of properties, but that textbox object has
different values for those properties
• The Properties window gives you a listing of property
values for each object
• Example:
Name: txtFoo Name: txtBar
Text: “Hi Mom” Text: “I love USP”
Visible: True Visible: False

• General way to refer to properties in code is:


Object.Property = Value
43
OOP (continued)
• VB.Net objects responds to Events
• Events are handled by event handlers.
• These event handlers are basically methods

• For e.g. In the Skate-Away application, double clicking on the


Exit button in the design window takes you to the click event
handler (default) for the exit button.

Sub BtnExitClick(ByVal sender As Object, ByVal


e As EventArgs)
me.Close()
End Sub
• Everythings apart from Me.Close() is automatically written for
you. You just have to fill in the details.

44
Illustration of OOP Terms

45
Summary
• Describe programs, programming,
applications, and program development
• Identify each of the phases in the
development cycle
• Define an algorithm
• Object Oriented Programming includes:
• Objects – things with attributes and behaviors
• Attributes are the characteristics of an object
• Behaviors are actions that an object performs

46

You might also like