Basic concepts of C# ,IL code and JIT

  18th Day

Hey Guys, I hope that you are Enjoying with my blogs and Today's we will study about .NET Platform with "C#" Language basic concept.

  • .NET is a free, cross-platform, open source developer platform for building many different types of applications.
  • .NET Core is a cross-platform .NET implementation for websites, servers, and console apps on Windows, Linux, and macOS.
  • With .NET, you can use multiple languages, editors, and libraries to build for web, mobile, desktop, games, and IoT.
  • whatever code write in C# ,It compiles in intermediate language code and by  just in time compiler(JIT) make IL code to machine code. For Example

  • suppose if want to see IL code then build this program.
  • If we build this code then its IL code will show in bin folder
  • Go to solution explorer -> right click->open folder in file Explorer->binary folder(bin)->debug->


  • Many code folders has like dynamic link library(dll) Console application only for start to dll not run directly that's why application console first link and then run dll.
  • when we double click on exe then JIT start in background.
  • And JIT compile to single-single line make it machine code
  • Intermediate language disassembler (ILDSM) for showing purpose we will to go on visual command prompt
  • Like visual studio developer command prompt go and open then new dialogue box will open  drag and drop click on console application
  • Expand -> static void main then IL code will be show
  • so we can say that C# doesn't compile directly into machine code its first  compile into intermediate language then this IL code later compile by JIT into Binary code.
  • For Example: Flow of C# code

  •  C# is a strongly typed language it means that language is one in which variables are bound to specific data types, and will result in type errors like.  
           int i = 0;
                i++;
                i="Raushan"
          It will show error can not implicitly convert type string to int.
  • A strongly-typed language in which variables are bound to specific data types, and will result in type errors if types do not match up as expected in the expression — regardless of when type checking occurs.

  • C# Data Types: It is strongly data type language.

  • if condition : It is used where condition is true. otherwise else condition.
                     Input:
                     Output:     After insert data
                                       Without insert data 


  • Convert one data type to another:
                                    Input:
                                 

                                   Output: 
                                   

                          Must refer this videos for more details:

                
                                      Thank You...!
       

No comments:

Post a Comment