Upload
prashanth-shivakumar
View
257
Download
1
Tags:
Embed Size (px)
Citation preview
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
In this session, you will learn to:Explain features of the object-oriented methodology
Describe the phases of the object-oriented methodology
Define classes in C#
Declare variables
Write and execute C# programs
Objectives
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
An object means a ‘material thing’ that is capable of being presented to the senses.
An object has the following characteristics:It has a state
It may display behavior
It has a unique identity
Objects interact with other objects through messages.
Let us understand these concepts.
The Foundation of Object Orientation
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.)
Car is flashing the lights to pass the message to the other car
The Foundation of Object Orientation (Contd.)
Just a minute
Identify the possible states of the following objects:1. A cell phone
2. A stereo
Solution:1. States of a cell phone: Off, Ring, Vibrate, and Call
2. States of a stereo: Play, Pause, Rewind, and Forward
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.
Characteristics of the Object-Oriented Approach
Realistic modeling
Reusability
Resilience to change
Existence as different forms
Just a minute
State whether the following situations demonstrate reusability:1. Recycling paper
2. 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.
The following phases are involved in the software development:
The Analysis phase
The Design phase
The Implementation phase
Let us discuss the process of constructing a building.
Phases of Object Orientation
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 details
Display customer details
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#
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.)
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#
public class Hello
{
public static void Main(string[] args)
{
System.Console.WriteLine("Hello, World! \n");
}
}
Classes in C# (Contd.)
The class Keyword
Is used to declare a class
public class Hello
{
public static void Main(string[] args)
{
System.Console.WriteLine("Hello, World! \n");
}
}
The class Name
Is used as an identifier for a class
Classes in C# (Contd.)
public class Hello
{
public static void Main(string[] args)
{
System.Console.WriteLine("Hello, World! \n");
}
}
The Main() Function
Is the entry point of an application
Is used to create objects and invoke member functions
Classes in C# (Contd.)
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.)
public class Hello
{
public static void Main(string[] args)
{
System.Console.WriteLine("Hello, World! \n");
}
}
The Escape Character
Displays New line character. Other special characters can also be displayed such as \t, \b and \r
Classes in C# (Contd.)
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”.
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
You can declare and initialize variables by using the following syntax:<data_type> <variable_name>=<value>;
Declaring and Initializing Variables
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 variable
C# provides you with various built-in data types, such as:• char• int• float• double• bool• string
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
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
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
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 Variables
Name
#Score
Age
2Strank
Family_Size
Gender
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.
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
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
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 variables
string 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.
{
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.)
//Class used to instantiate the Car class
class 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.
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
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.)
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 characters
Rank as an integer
Winning average as a decimal value
Help David to create the program.
Demo: Creating a C# Program
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:
State
Behavior
Identity
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
The features of the object-oriented approach are:Realistic modeling
Reusability
Resilience to change
Existence 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.)
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.)