01 iec t1_s1_oo_ps_session_01

45
Slide 1 of 45 Session 1 Ver. 1.0 Object-Oriented Programming Using C# Object-oriented concepts form the base of all modern programming languages. Understanding the basic concepts of object-orientation helps a developer to use various modern day programming languages, more effectively. C# (C-Sharp) is an object-oriented programming language developed by Microsoft that intends to be a simple, modern, and general-purpose programming language for application development. The course is applicable to students who want to enter the world of object-oriented programming, using the C# language. This course provides a strong foundation in object-oriented programming approaches and the fundamentals of C# programming language. Rationale

Upload: niit-care

Post on 16-Apr-2017

2.020 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: 01 iec t1_s1_oo_ps_session_01

Slide 1 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Object-oriented concepts form the base of all modern programming languages. Understanding the basic concepts of object-orientation helps a developer to use various modern day programming languages, more effectively. C# (C-Sharp) is an object-oriented programming language developed by Microsoft that intends to be a simple, modern, and general-purpose programming language for application development.The course is applicable to students who want to enter the world of object-oriented programming, using the C# language. This course provides a strong foundation in object-oriented programming approaches and the fundamentals of C# programming language.

Rationale

Page 2: 01 iec t1_s1_oo_ps_session_01

Slide 2 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

In this session, you will learn to:Explain features of the object-oriented methodologyDescribe the phases of the object-oriented methodologyDefine classes in C#Declare variablesWrite and execute C# programs

Objectives

Page 3: 01 iec t1_s1_oo_ps_session_01

Slide 3 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Object orientation is a software development methodology that is based on modeling a real-world system.An object oriented program consists of classes and objects.

Let us understand the terms—class and objects

Object-Oriented Methodology

Page 4: 01 iec t1_s1_oo_ps_session_01

Slide 4 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Toyota CamrySuzuki Reno Honda Acura

Objects

Class

Object-Oriented Methodology (Contd.)

Car

Page 5: 01 iec t1_s1_oo_ps_session_01

Slide 5 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

An object means a ‘material thing’ that is capable of being presented to the senses. An object has the following characteristics:

It has a stateIt may display behaviorIt has a unique identity

Objects interact with other objects through messages.

Let us understand these concepts.

The Foundation of Object Orientation

Page 6: 01 iec t1_s1_oo_ps_session_01

Slide 6 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Car positioned at one place defines it’s State

Movement of car defines it’s Behavior

Car number XX 4C 4546 shows the Identity of the car

The Foundation of Object Orientation (Contd.)

Page 7: 01 iec t1_s1_oo_ps_session_01

Slide 7 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Car is flashing the lights to pass the message to the other car

The Foundation of Object Orientation (Contd.)

Page 8: 01 iec t1_s1_oo_ps_session_01

Slide 8 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C# Just a minute

Identify the possible states of the following objects:1. A cell phone2. A stereo

Solution:1. States of a cell phone: Off, Ring, Vibrate, and Call2. States of a stereo: Play, Pause, Rewind, and Forward

Page 9: 01 iec t1_s1_oo_ps_session_01

Slide 9 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C# Just a minute

Dr. James and Mr. Hyde went to the railway station to book tickets for 3rd December. At the railway station, they requested the clerk at the ticket counter to book two tickets for the Flying Express in the first class. Identify the following:1. The possible receiver of the message in this situation.2. The possible method that the receiver can use.

Solution:1. The receiver of the message in this case will be the clerk at

the ticket counter.2. The clerk will check if two tickets are available on the

requested train in the desired class and for the desired date. If the tickets are available, the clerk will enter the details (name, age, departure date, and seat), confirm the reservation, and collect the required fare.

Page 10: 01 iec t1_s1_oo_ps_session_01

Slide 10 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C# Characteristics of the Object-Oriented Approach

Realistic modelingReusabilityResilience to changeExistence as different forms

Page 11: 01 iec t1_s1_oo_ps_session_01

Slide 11 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C# Just a minute

State whether the following situations demonstrate reusability:1. Recycling paper2. Pump reusability (same pump is used in a well and in a fuel

station)

Solution:1. It does not represent reusability because the unusable paper

is destroyed before paper is recycled for use. The unusable paper loses its identity and cannot be considered the same as recycled paper.

2. It represents reusability because a pump can be used for suction of water as well as petrol. It is not necessary to use the same pump in both the cases. Two separate machines can be used because both belong to the ‘Pump’ class.

Page 12: 01 iec t1_s1_oo_ps_session_01

Slide 12 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

The following phases are involved in the software development:

The Analysis phaseThe Design phase The Implementation phase

Let us discuss the process of constructing a building.

Phases of Object Orientation

Page 13: 01 iec t1_s1_oo_ps_session_01

Slide 13 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C# Just a minute

As a member of a team that is developing software for DialCom Telecommunications, Inc., you have been assigned the task of creating a software module that accepts and displays customer details such as name, age, and phone number. Identify the class that you will create and the methods of the class.

Solution:As per the problem statement, the class required is:

Customer

The class should have the methods to:Accept customer detailsDisplay customer details

Page 14: 01 iec t1_s1_oo_ps_session_01

Slide 14 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

A program is a set of instructions to perform a specific task.Programming languages use programs to develop software applications.A compiler is a special program that processes the statements written in a particular programming language and converts them into a machine language.This process of conversion is called compilation.

Introducing C#

Page 15: 01 iec t1_s1_oo_ps_session_01

Slide 15 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

C#, also known as C-Sharp, is a programming language introduced by Microsoft. C# is specially designed to work with the Microsoft’s .NET platform.

Let us understand the structure of a C# program.

Introducing C# (Contd.)

Page 16: 01 iec t1_s1_oo_ps_session_01

Slide 16 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Consider the following code example, which defines a class:public class Hello{public static void Main(string[] args){

System.Console.WriteLine("Hello, World! \n");

}}

Classes in C#

Page 17: 01 iec t1_s1_oo_ps_session_01

Slide 17 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

public class Hello{public static void Main(string[] args){System.Console.WriteLine("Hello, World! \n");

}}

Classes in C# (Contd.)

The class KeywordIs used to declare a class

Page 18: 01 iec t1_s1_oo_ps_session_01

Slide 18 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

public class Hello{public static void Main(string[] args){System.Console.WriteLine("Hello, World! \n");

}}

The class NameIs used as an identifier for a class

Classes in C# (Contd.)

Page 19: 01 iec t1_s1_oo_ps_session_01

Slide 19 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

public class Hello{public static void Main(string[] args){System.Console.WriteLine("Hello, World! \n");

}}

The Main() FunctionIs the entry point of an applicationIs used to create objects and invoke member functions

Classes in C# (Contd.)

Page 20: 01 iec t1_s1_oo_ps_session_01

Slide 20 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

public class Hello{public static void Main(string[] args){

System.Console.WriteLine("Hello, World! \n");

}}

System.Console.WriteLine()Displays the enclosed text on the screen

Classes in C# (Contd.)

Page 21: 01 iec t1_s1_oo_ps_session_01

Slide 21 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

public class Hello{public static void Main(string[] args){System.Console.WriteLine("Hello, World! \n");

}}

The Escape CharacterDisplays New line character. Other special characters can also be displayed such as \t, \b and \r

Classes in C# (Contd.)

Page 22: 01 iec t1_s1_oo_ps_session_01

Slide 22 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C# Demo: Creating Classes

Problem Statement:As a member of a team that is developing toys for JoyToys, Inc., you have been assigned the task of creating a bike module that accepts and displays bike details. Declare the Bike class and its member functions. The member function that accepts bike details should display the message “Accepting Bike Details”. Similarly, the member function to display bike details on the screen should display the message “Displaying Bike Details”.

Page 23: 01 iec t1_s1_oo_ps_session_01

Slide 23 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

A variable is a location in the memory that has a name and contains a value.A variable is associated with a data type that defines the type of data that can be stored in a variable.

Declaring Variables

Page 24: 01 iec t1_s1_oo_ps_session_01

Slide 24 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

You can declare and initialize variables by using the following syntax:<data_type> <variable_name>=<value>;

Declaring and Initializing Variables

Page 25: 01 iec t1_s1_oo_ps_session_01

Slide 25 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Consider the following example of declaring and initializing a variable:int class_rank=2;

Declaring and Initializing Variables (Contd.)

Data Types in C#Represents the kind of data stored in a variableC# provides you with various built-in data types, such as:• char• int• float• double• bool• string

Page 26: 01 iec t1_s1_oo_ps_session_01

Slide 26 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C# Data Types in C#

Let us now understand the various data types with the help of examples.

Page 27: 01 iec t1_s1_oo_ps_session_01

Slide 27 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Name

Marks

Age

Vowel

string

float

int

char

= “Peter”

= 83.56

= 23

= ‘a’

Data Types in C# (Contd.)

Page 28: 01 iec t1_s1_oo_ps_session_01

Slide 28 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Consider the following example of declaring and initializing a variable:int class_rank=2;

Data types in C#The following types of data types are supported by C#:• Value types

Num

Memory allocated

Variable declared and Initialized

int Num;Num=5; 5

Data Types in C# (Contd.)

Memory Allocation in Value Type

Page 29: 01 iec t1_s1_oo_ps_session_01

Slide 29 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Consider the following example of declaring and initializing a variable:int class_rank=2;

Declaring and Initializing Variables

Data types in C#The following types of data types are supported by C#:• Reference types

string Str=“Hello”;

Str

0 1 2 3 4

H E L L O

Address

Memory Allocation of the String Type Variable

Page 30: 01 iec t1_s1_oo_ps_session_01

Slide 30 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Consider the following example of declaring and initializing a variable:int class_rank=2;

Declaring and Initializing Variables (Contd.)

Naming variables in C#The following rules are used for naming variables in C#:• Must begin with a letter or

an underscore• Should not contain any

embedded spaces or symbols

• Must be unique • Can have any number of

characters• Keywords cannot be used

as variable names

Page 31: 01 iec t1_s1_oo_ps_session_01

Slide 31 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Consider the following example of declaring and initializing a variable:int class_rank=2;

Declaring and Initializing Variables (Contd.)

Examples and non-examples of Naming VariablesName

#Score

Age

2Strank

Family_Size

Gender

Page 32: 01 iec t1_s1_oo_ps_session_01

Slide 32 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Consider the following example of declaring and initializing a variable:int class_rank=2;

Declaring and Initializing Variables (Contd.)

Initializing Variables in C#Specifies the value that needs to be stored in a variable. The value could be an integer, a decimal, or a character.

Page 33: 01 iec t1_s1_oo_ps_session_01

Slide 33 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

To understand how to accept value in a variable, let us consider the following code snippet:int Number;Number=Convert.ToInt32(Console.ReadLine());

Accepting and Storing Values in Member Variables

Console.ReadLine()Is used to accept input from the user and store it in the variable

Page 34: 01 iec t1_s1_oo_ps_session_01

Slide 34 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

To understand how to accept value in a variable, let us consider the following code snippet:int Number;Number=Convert.ToInt32(Console.ReadLine());

Accepting and Storing Values in Member Variables (Contd.)

Convert.ToInt32()Converts the value entered by the user to the int data type

Page 35: 01 iec t1_s1_oo_ps_session_01

Slide 35 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Let us know learn to write, compile, and execute a C# program.

Writing and Executing a C# Program

Page 36: 01 iec t1_s1_oo_ps_session_01

Slide 36 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

A C# program can be written by using an editor like Notepad. Consider the following code, which declares a class Car and also creates an object MyCar of the same class:using System;class Car{//Member variablesstring Engine;int NoOfWheels;//Member functions void AcceptDetails()

Creating a Sample C# Program

The using keyword is used to include the namespaces in the program.

Comments are used to explain the code and are represented by // symbols.

Member variables are used to store the data for a class.

Member functions are declared inside the class that are used to perform a specific task.

Page 37: 01 iec t1_s1_oo_ps_session_01

Slide 37 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

{Console.WriteLine("Enter the Engine Model");Engine = Console.ReadLine();Console.WriteLine("Enter the number of Wheels");NoOfWheels = Convert.ToInt32(Console.ReadLine());

}public void DisplayDetails(){Console.WriteLine("The Engine Model is:{0}", Engine);Console.WriteLine("The number of wheels are:{0}", NoOfWheels);

}}

Creating a Sample C# Program (Contd.)

Page 38: 01 iec t1_s1_oo_ps_session_01

Slide 38 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

//Class used to instantiate the Car classclass ExecuteClass{public static void Main(string[] args){Car MyCar = new Car();MyCar.AcceptDetails();MyCar.DisplayDetails();

}}

Creating a Sample C# Program (Contd.)

The Execute class is used as a class from where the Car class can be instantiated.

Page 39: 01 iec t1_s1_oo_ps_session_01

Slide 39 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

After writing the program in a Notepad, you need to compile and execute it to get the desired output.The compiler converts the source code that you write into the machine code, which the computer can understand.The following steps are needed to compile and execute a C# program.1. Save the code written in the Notepad with an extension .cs.2. To compile the code, you need to go to the Visual Studio

2005 Command Prompt window. Select StartAll ProgramsMicrosoft Visual Studio 2005Visual Studio ToolsVisual Studio 2005 Command Prompt. The Visual Studio 2005 Command Prompt window is displayed to compile the program.

3. In the Visual Studio 2005 Command Prompt window, move to the location where the programs file is saved.

Compiling and Executing C# Program

Page 40: 01 iec t1_s1_oo_ps_session_01

Slide 40 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

4. Compile the program file by using the following command:csc ExecuteClass.cs

5. To execute the code, type the following in the command prompt:ExecuteClass.exe

Compiling and Executing C# Program (Contd.)

Page 41: 01 iec t1_s1_oo_ps_session_01

Slide 41 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Problem Statement:David is the member of a team that is developing the Automatic Ranking software for a tennis tournament. You have been assigned the task of creating a program. The program should accept the following details of a tennis player and display it:

Name, containing a maximum of 25 charactersRank as an integer Winning average as a decimal value

Help David to create the program.

Demo: Creating a C# Program

Page 42: 01 iec t1_s1_oo_ps_session_01

Slide 42 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

In this session, you learned that:According to the object-oriented approach, systems consist of component objects that interact with each other.An object is an entity that may have a physical boundary. However, it should have the following characteristics:

StateBehaviorIdentity

A class consists of a set of objects that share a common structure and behavior.If an object desires an action from another object, it sends a message to that object.The object that receives the message is called the receiver, and the set of actions taken by the receiver constitutes the method.

Summary

Page 43: 01 iec t1_s1_oo_ps_session_01

Slide 43 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

The features of the object-oriented approach are:Realistic modelingReusability Resilience to changeExistence as different forms

A model of a system is built in the stages of analysis, design and implementation.The purpose of the model is to help developers understand the reality that they are trying to imitate.In C#, a class is created by using the keyword class. It is identified by a name called the class name. The Console.WriteLine() method is used to display text on the screen.Main() is the first function which is executed in a C# program.

Summary (Contd.)

Page 44: 01 iec t1_s1_oo_ps_session_01

Slide 44 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Escape characters are used to display special characters such as the newline character.A variable is a named location in the memory, which contains a specific value.A datatype defines the type of data that can be stored in a variable.The two types of data type are Value type and Reference type.The ReadLine() method is used to accept inputs from the user.The using keyword is used to include the namespaces in the program.A namespace contains a set of related classes. Member variables are declared inside the class body.

Summary (Contd.)

Page 45: 01 iec t1_s1_oo_ps_session_01

Slide 45 of 45Session 1Ver. 1.0

Object-Oriented Programming Using C#

Comment entries are notes written by a programmer in the code so that others reading that code can understand it better.An object is an instance of a class.The compiler software translates a program written in a language like C# into the machine language.

Summary (Contd.)