C#_Sharp_Using_Oops_Unit_01

45
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

Transcript of C#_Sharp_Using_Oops_Unit_01

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

Toyota CamrySuzuki Reno Honda Acura

Objects

Class

Object-Oriented Methodology (Contd.)

Car

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

Data Types in C#

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

Name

Marks

Age

Vowel

string

float

int

char

= “Peter”

= 83.56

= 23

= ‘a’

Data Types in C# (Contd.)

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

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

Writing and Executing a C# Program

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.)

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.)