Information  About  CSharp(C#)

  • By Shubham Baghel
  • January 4, 2021
  • C & C++

Hello Students in this blog  I   am discussing the information about c#(C  sharp) Programming Language.

We  have  seen the number of  programming  Languages   Like   c, CPP, java    just  like  that  C# is  also an object-oriented  programming  language  developed  by  Microsoft that  runs  only  on the Dot Net framework 

Used to develop different types of applications like desktop Application, web Application, Windows Application,  console Application,  any other type of application using Visual Studio.

Using c#  we can develop secure and robust applications.

Now  Let’s understand what is  C#? 

C#  is a Simple, powerful,  object-oriented  Programming   Language which is runs on the dot net framework only.   To create   C# programs we can use visual studio.

C#   is mainly influenced by C++.

Anders Hejlsberg is the father of  C#  Language. Currently, C# 8.0  is running.

 Before  proceeding  the  further  information  of  c#   Lets  understand the Dot net  framework

Dot   Net   framework

Dot net   Framework is a Collection of  Libraries that help us to develop different kinds of applications like a web application,  windows Applications, Mobile applications.  Dot net framework provides a wide range of features and support for any type of  Application.

Dot net framework is designed and developed by  Microsoft,  It was first released in 2000.

The framework contains a Large number of  Libraries, which are commonly known as  Framework  Class Library (FCL)  also known as   Base class  Library.

To   execute the programs   which are written  in  Dot net   is  called   Common Language  Runtime (CLR)

CLR, FCL   are essential features of  Dot Net Framework.

Dot  Net  Support more than  60   different programming languages. Like

C#, F#,VB.net, J#, VC++, python, Jscript, Pascal, etc.

 

As a   dot net programmer, you need not learn all  Programming Languages. If you   Learn only one Language that is enough to create  Applications.

Apart   from   Language  support  Dot net  provides  the  following services  like

Memory Management,  

networking,

 security,  

 Type-safety.  

These are Some of the Common  Services.

Here is a  diagram of the Dot Net  Framework.

 

Link  Address  is

https://static.javatpoint.com/csharp/net/images/net-framework.png

CLR(Common Language  Runtime)

The main heart of  Dot net is  CLR(Common Language  Runtime).CLR  is the main execution engine. It Converts the program into machine Code.CLR    act as the interface between the Dot net framework and Operating System.

The task of  CLR is

Exception Handling

Memory Management

Garbage Collection

Security

Type-Safety

Portability

Interoperability

Here   is a Diagram  of  CLR

 

The  link  Address  is:

https://static.javatpoint.com/csharp/net/images/net-common-language-runtime.png.

FrameWork   Class Library(FCL)

FCL    is a  Collection of  Classes to build any type of  Application.  Also known as  Base Class Library.

Here  is  a  diagram  of  FCL 

 

Link  Address  is

https://static.javatpoint.com/csharp/net/images/net-framework-base-class-library.png

 

Lets us Move to  C#.

 

C#1.0   was introduced in 2002 with  Some of the basic features  Now in c#  8.0. It has made so many major changes added different types of libraries.  To create a fast and secure and robust application.

 

Features   of  C#

C#  provides several features that are mentioned below.

 C# is an object-oriented  Programming Language.

Rich  in Library

Scalable,  Powerful, Robust, Type safety, fast

Modern  Programming Language.

 

Link Address

https://static.javatpoint.com/csharp/images/csharp-features1.png

Compared to other programming Language  Compilation and execution time of c#  is  Fast. So we can choose it for development.

 

Let’s    Understand  Syntax

 

C#    Language  Syntax  Looks like java only. C#  is mainly influenced by  CPP.

 

using System;

 

namespace ConsoleApp1

{

    class Program

 

    {

      public  static void Main(string[] args)

        {

            Console.WriteLine(“Hello World!”);

        }

    }

}

 

Description of the Above Program.

Using is a keyword. The system is the namespace. the namespace contains a group of classes. a namespace is used to organize programs for easy access.

Public:  It is  Access Specifier.

  Class is a  keyword used to declare the class. Class a blueprint for creating objects. 

Static: it is a keyword this helps to access the main method without the object. So it saves memory.

Main() : it  is  entry   point of  program .  where  C# Compiler starts from this point.

string[] args:   this is a Command-Line argument that is passed from the operating system.

Console.WriteLine:  From  Console  Class, the Write Line method is used to display output on Screen.

 

Variables and  Data types  in C#

C#  is a strongly typed language. So we need to specify a data type for the variable. You can not assign one value to another value. In C# variables are divided into two types based on memory and how the variables store the value.

Value  Type and, Reference  Type.   

Value Type:   In value type data and variables holds the data in their own memory space.

The followings are   value  Type

int, char, float, double, enum, long, short, byte,  etc.

Reference Type:   Reference type does not store its value directly. But it stores the address of the value. In reference  Type, it always contains the pointer to another memory location.

The followings are reference  Types.

 

Strings,  Arrays, Class, Delegate

We  can  Declare  Variables  with  the  following  Syntax

 

Data type   variable_name;

the data type  can  be  value  type  for reference Type

Here  is  a  Program  for  variables

class Program

 

    {

        static void Main(string[] args)

        {

            Console.WriteLine(“Demo of variables”);

            int x = 100;

            double y = 89.90;

            String name = “student”;

            Console.WriteLine(x);

            Console.WriteLine(y);

            Console.WriteLine(name);

        }

    }

 

In c# predefined data types are called alias to their  .Net Types (CLR) name.

 Every data type has a  default value like all  Numeric data Types        Weather you declare int, long, byte, short have  0  value.

And boolean has a false value   String has a null value. And char has ‘\0’. 

In  object-oriented  Programming  Variables’   can be  divided   into    three   Types  like

Local  variable

Instances   variable

Static  variable

All instance variables will have default values. The variable which is declared in a  class is called instance variables.  You can access the instance variable with the help of an object only.

The variables which are declared in a  method or function is known as a local variable. The scope of the local variable remains inside a  function only.

The variables which are declared using static keyword is known as a static variable. Static variables are part of the class  So   Accessing static variables can be done with the class name and not with a variable name. Static variables belong to a class. Static variables are sharable to all objects. Any data that is sharable to all objects is static a  variable. The main use of static variables is for memory management.   

 

In c# 7.1      every data type default value.  The values of certain data types are automatically converted into other data types in c#. this is called an implicit conversion.

For example, an int can be converted into afloat.

 

                    Dynamic   Data Type  in  C#

 

Apart from these built-in variables   C#   also supports Dynamic    Data Types.

These   Dynamic  Data Types are var, Object, Dynamic.

 

The Dynamic Data Type Concept is introduced in c#(4.0)  and dot net framework (4.5). In Dynamic  Data Type without declaring the dataType of the variable, you can store any value that value will be checked at run time rather than compile time.

Dynamic.  This is a  new data type introduced in c# 4.0. This dynamic will escape the type checking at compile time. The variable type will be checked at run time only. The dynamic variable will be declared by the dynamic keyword. 

Example  of  Dynamic Keyword

class Program

 

    {

        static void Main(string[] args)

        {

                               dynamic  d=100;

                         Console.WriteLine(d);

 

                            d=”hello world”;

                         Console.WriteLine(d);

 

                           d=true;

                         Console.WriteLine(d);

 

              }

}

 

After compiling and running the program we will get output based on the value of the variable.

dynamic types changes at run time based on assigned value.

The compiler can convert any object into a dynamic type implicitly. This is a boon for developers.  So developers can easily switch between dynamic and non-dynamic types.

The  Dynamic  Language run time  API  will provide support for a dynamic data type.

A mostly dynamic data type is used in API  Programming  Like COM APIs like office automation API. In C#  dynamic keyword implementation can be done in  IronPython,  IronRuby Languages. 

 

Var:  var can be used to declare any built-in data type or user-defined data type or anonymous type.  C#  Compiler implicitly converts based on the data type. It is introduced in c# 3.0.

This is used mostly in  Lambda  Expressions.

Example  of  var  keyword

Apart from   These   Data Type. C#   also supports   Dynamic  Types are var, Dynamic, Object.

using System;

 

namespace ConsoleApp1

{

    class Program

 

    {

        static void Main(string[] args)

        {

            var i = 10;

            Console.WriteLine(“Type of i is {0}”, i.GetType());

 

            var str = “Hello World!!”;

            Console.WriteLine(“Type of str is {0}”, str.GetType());

 

            var dbl = 100.50d;

            Console.WriteLine(“Type of dbl is {0}”, dbl.GetType());

 

            var isValid = true;

            Console.WriteLine(“Type of isValid is {0}”, isValid.GetType());

 

            

 

            var arr = new[] { 1, 10, 20, 30 };

            Console.WriteLine(“Type of arr is {0}”, arr.GetType());

            Console.Read();

        }

    }

}

 

Rules    of  var keyword

var is known as an implicitly typed local variable. You need to assign value to Var otherwise  Compiler will give a compiler error.

                  var  x;

                   x=100;

           This line will give compilation error.   variable  must be  initialized   immediately. 

 Multiple declarations of var are not allowed. 

             var    i=100,j=200,k=300 ; 

Single line declaration is not allowed.

 

 Var cannot be used as a function parameter.

          void  m1(var  x)   //compile  time  error

{

Console.writeln(x);

}

Uses   of  var keyword 

1) Var can be used in for loop and foreach loop.

2) Var can be used in  LINQ   queries.

Submit Comment

Your email address will not be published. Required fields are marked *

*
*