Module 1.2 Flashcards
mainly designed to overcome the disadvantages of C and C++ and to develop internet applications (web applications) by achieving platform independence.
C#.NET Programming Language
READ
● C# is simple because C# simplifies the programmer’s job by avoiding certain features of C and C++.
● C# avoids explicit memory management. Memory management in C# is automatic. It is done by CLR. So, there is no chance of memory leakage.
● There is a pointer concept in C# but it is restricted. C# is very familiar to programmers because it is modeled on the C and C++ languages.
● C# uses many features of C and C++; therefore, C# codes look like C and C++ codes.
● We can say C# is the simplified version of C and C++.
(NOTE LANG TO)
C# is simple and familiar
READ
Portability allows the programmer to write the same code for different machines (operating systems). C# provides portability in two ways
○ Source Code Portability
○ IL Code Portability (DLL and EXE)
(NOTE LANG TO)
C# is portable
READ
● The behavior of C# programs doesn’t change when we move from one system to another which means it will provide the same output in every machine because in C# memory layout decisions are not made at compile time, it is made at run time by CLR.
(NOTE LANG TO)
C# is architecturally Neutral
READ
● C# is secured because the C# programs are executed in a secured
environment called CLR. CLR will provide security to the C# programs.
(NOTE LANG TO)
C# is secured
READ
● C# is a strong type-checking language having strict type-checking during both compilation time and execution time which allows us to develop error-free applications and programs.
(NOTE LANG TO)
C# is Robust
READ
● Using C# Programming Language, we can develop distributed applications whose resources are shared by more than one client.
(NOTE LANG TO)
C# is Distributed
READ
● A process is divided into several small parts known as threads or lightweight processes.
● Sending multiple threads to the processor for processing is known as multithreading.
● Multi-threading means handling multiple tasks simultaneously.
(NOTE LANG TO)
C# is Multithreaded
READ
● C# 4.0 introduced a new type called dynamic that avoids compile-time type checking. A dynamic type escapes type checking at compile-time; instead, it resolves the type at run time.
(NOTE LANG TO)
C# is Dynamic
READ
● C# compiler CSC translates source code into an intermediate language code known as MSIL (Microsoft Intermediate Language) or CIL (Common Intermediate Language) code. But these MSIL or CIL or IL codes are not machine instructions.
● These MSIL or CIL, or IL codes are interpreted by the C# interpreter (One Component of CLR called JIT- Just in Time Compiler).
● As a result, machine instructions will be generated which are directly executed by the machine. Hence, we are saying C# is both interpreted and compiled language.
(NOTE LANG TO)
C# is Compiled and Interpreted
READ
● Except for the primitive data types, all elements in C# are objects. Object-oriented is not a programming language, it is a programming technique or concept, or principle which defines a set of rules and regulations for organizing the data and instructions. The concepts provided by oops are as follows
○ Encapsulation
○ Abstraction
○ Polymorphism
○ Inheritance
(NOTE LANG TO)
C# is Object-Oriented
READ
● Many Programming Languages are compatible with only one platform. Now, with the introduction of .NET Core or .NET, C# was specifically designed to be platform-independent. C# applications with .NET Core or .NET can be run on Windows, Linux, and Mac operating systems. So, we can say C# is Platform Independent with .NET Core or .NET.
(NOTE LANG TO)
C# is Platform Independent
READ
● The .NET Framework automatically manages memory allocation and deallocation for objects.
● When a dot net application runs, lots of objects are created. At a given point in time, it is possible that some of those objects are not used by the application.
● Garbage Collector in .NET Framework is nothing but a Small Routine or you can say it is a Background Process that runs periodically and try to identify what objects are not being used currently by the application and de-allocates the memory of those objects. So, as a developer, we need not worry about how memory allocation and deallocation are done in .NET Applications.
(NOTE LANG TO)
Automatic Memory Management
READ
C# Provides Strong Exception Handling Features which can be used to stop the Abnormal Termination of the program and you can also provide userunderstandable messages when an exception is raised.
(NOTE LANG TO)
Exception Handling
READ
C# is just a Simple, Secure, Robust, Portable, Platform-Independent,
Architectural Neutral, Multithreaded, Automatic Memory Management, Object- Oriented Programming Language with a strong type Exception Handling mechanism for developing different kinds of applications such as Web, Windows Form, Console, Web Services, Mobile Apps, etc. which can be run on different Operating Systems such as Windows, Linus, and Mac.
(NOTE LANG TO)
What is C#?