Interview Preparation Exam  >  Interview Preparation Notes  >  Placement Papers - Technical & HR Questions  >  .NET Framework (Part - 1), .NET Interview Questions

.NET Framework (Part - 1), .NET Interview Questions | Placement Papers - Technical & HR Questions - Interview Preparation PDF Download

1. What is .NET Framework?

.NET Framework is a complete environment that allows developers to develop, run, and deploy the following applications:

  • Console applications
  • Windows Forms applications
  • Windows Presentation Foundation (WPF) applications
  • Web applications (ASP.NET applications)
  • Web services
  • Windows services
  • Service-oriented applications using Windows Communication Foundation (WCF)
  • Workflow-enabled applications using Windows Workflow Foundation (WF)

.NET Framework also enables a developer to create sharable components to be used in distributed computing architecture. NET Framework supports the object-oriented programming model for multiple languages, such as Visual Basic, Visual C#, and Visual C++. .NET Framework supports multiple programming languages in a manner that allows language interoperability. This implies that each language can use the code written in some other language. 


2. What are the main components of .NET Framework?

.NET Framework provides enormous advantages to software developers in comparison to the advantages provided by other platforms. Microsoft has united various modern as well as existing technologies of software development in .NET Framework. These technologies are used by developers to develop highly efficient applications for modern as well as future business needs. The following are the key components of .NET Framework:
 

  • .NET Framework Class Library
  • Common Language Runtime
  • Dynamic Language Runtimes (DLR)
  • Application Domains
  • Runtime Host
  • Common Type System
  • Metadata and Self-Describing Components
  • Cross-Language Interoperability
  • .NET Framework Security
  • Profiling
  • Side-by-Side Execution


3. List the new features added in .NET Framework 4.0.

The following are the new features of .NET Framework 4.0:
 

  • Improved Application Compatibility and Deployment Support
  • Dynamic Language Runtime
  • Managed Extensibility Framework
  • Parallel Programming framework
  • Improved Security Model
  • Networking Improvements
  • Improved Core ASP.NET Services
  • Improvements in WPF 4
  • Improved Entity Framework (EF)
  • Integration between WCF and WF


4. What is an IL?

Intermediate Language is also known as MSIL (Microsoft Intermediate Language) or CIL (Common Intermediate Language). All .NET source code is compiled to IL. IL is then converted to machine code at the point where the software is installed, or at run-time by a Just-In-Time (JIT) compiler.


5. What is Manifest?

Assembly metadata is stored in Manifest. Manifest contains all the metadata needed to do the following things
The assembly manifest can be stored in a PE file either (an .exe or) .dll with Microsoft 
intermediate language (MSIL code with Microsoft intermediate language (MSIL) code or in a 
stand-alone PE file, that contains only assembly manifest information.

  • Version of assembly.
  • Security identity.
  • Scope of the assembly.
  • Resolve references to resources and classes.


6. What are code contracts?

Code contracts help you to express the code assumptions and statements stating the behavior of your code in a language-neutral way. The contracts are included in the form of pre-conditions, post-conditions and object-invariants. The contracts help you to improve-testing by enabling run-time checking, static contract verification, and documentation generation.

The System.Diagnostics.Contracts namespace contains static classes that are used to express contracts in your code.


7. Name the classes that are introduced in the System.Numerics namespace.

The following two new classes are introduced in the System.Numerics namespace:

  • BigInteger - Refers to a non-primitive integral type, which is used to hold a value of any size. It has no lower and upper limit, making it possible for you to perform arithmetic calculations with very large numbers, even with the numbers which cannot hold by double or long.
  • Complex - Represents complex numbers and enables different arithmetic operations with complex numbers. A number represented in the form a + bi, where a is the real part, and b is the imaginary part, is a complex number.


8. What is managed extensibility framework?

Managed extensibility framework (MEF) is a new library that is introduced as a part of .NET 4.0 and Silverlight 4. It helps in extending your application by providing greater reuse of applications and components. MEF provides a way for host application to consume external extensions without any configuration requirement.


9. Explain memory-mapped files.

Memory-mapped files (MMFs) allow you map the content of a file to the logical address of an application. These files enable the multiple processes running on the same machine to share data with each Other. The MemoryMappedFile.CreateFromFile() method is used to obtain a MemoryMappedFile object that represents a persisted memory-mapped file from a file on disk.

These files are included in the System.IO.MemoryMappedFiles namespace. This namespace contains four classes and three enumerations to help you access and secure your file mappings.


10. What is Common Type System (CTS)?

CTS is the component of CLR through which .NET Framework provides support for multiple languages because it contains a type system that is common across all the languages. Two CTS-compliant languages do not require type conversion when calling the code written in one language from within the code written in another language. CTS provide a base set of data types for all the languages supported by.NET Framework. This means that the size of integer and long variables is same across all .NET-compliant programming languages. However, each language uses aliases for the base data types provided by CTS. For example, CTS uses the data type system. int32 to represent a 4 byte integer value; however, Visual Basic uses the alias integer for the same; whereas, C# uses the alias int. This is done for the sake of clarity and simplicity.


11. Give a brief introduction on side-by-side execution. Can two applications, one using private assembly and the other using the shared assembly be stated as side-by-side executables?

Side-by-side execution enables you to run multiple versions of an application or component and CLR on the same computer at the same time. As versioning is applicable only to shared assemblies and not to private assemblies, two applications, one using a private assembly and other using a shared assembly, cannot be stated as side-by-side executables.


12. Which method do you use to enforce garbage collection in .NET?

The System.GC.Collect() method.


13. State the differences between the Dispose() and Finalize().

CLR uses the Dispose and Finalize methods to perform garbage collection of run-time objects of .NET applications.

The Finalize method is called automatically by the runtime. CLR has a garbage collector (GC), which periodically checks for objects in heap that are no longer referenced by any object or program. It calls the Finalize method to free the memory used by such objects. The Dispose method is called by the programmer. Dispose is another method to release the memory used by an object. The Dispose method needs to be explicitly called in code to dereference an object from the heap. The Dispose method can be invoked only by the classes that implement the IDisposable interface.


14. What is code access security (CAS)?

Code access security (CAS) is part of the .NET security model that prevents unauthorized access of resources and operations, and restricts the code to perform particular tasks.


15. Differentiate between managed and unmanaged code?

Managed code is the code that is executed directly by the CLR instead of the operating system. The code compiler first compiles the managed code to intermediate language (IL) code, also called as MSIL code. This code doesn't depend on machine configurations and can be executed on different machines.

Unmanaged code is the code that is executed directly by the operating system outside the CLR environment. It is directly compiled to native machine code which depends on the machine configuration.
In the managed code, since the execution of the code is governed by CLR, the runtime provides different services, such as garbage collection, type checking, exception handling, and security support. These services help provide uniformity in platform and language-independent behavior of managed code applications. In the unmanaged code, the allocation of memory, type safety, and security is required to be taken care of by the developer. If the unmanaged code is not properly handled, it may result in memory leak. Examples of unmanaged code are ActiveX components and Win32 APIs that execute beyond the scope of native CLR.


16. What are tuples?

Tuple is a fixed-size collection that can have elements of either same or different data types. Similar to arrays, a user must have to specify the size of a tuple at the time of declaration. Tuples are allowed to hold up from 1 to 8 elements and if there are more than 8 elements, then the 8th element can be defined as another tuple. Tuples can be specified as parameter or return type of a method.


17. How can you turn-on and turn-off CAS?

YOU can use the Code Access Security Tool (Caspol.exe) to turn security on and off.

To turn off security, type the following command at the command prompt:
caspol -security off 

To turn on security, type the following command at the command prompt:
caspol -security on 

In the .NET Framework 4.0, for using Caspol.exe, you first need to set the <LegacyCasPolicy> element to true.


18. What is garbage collection? Explain the difference between garbage collections in .NET 4.0 and earlier versions.

Garbage collection prevents memory leaks during execution of programs. Garbage collector is a low-priority process that manages the allocation and deallocation of memory for your application. It checks for the unreferenced variables and objects. If GC finds any object that is no longer used by the application, it frees up the memory from that object.

GC has changed a bit with the introduction of .NET 4.0. In .NET 4.0, the GC.Collect() method contains the following overloaded methods:

GC.Collect(int)
GC.Collect(int, GCCollectionMode)


Another new feature introduced in .NET is to notify you when the GC.Collect() method is invoked and completed successfully by using different methods. The .NET 4.0 supports a new background garbage collection that replaces the concurrent garbage collection used in earlier versions. This concurrent GC allocates memory while running and uses current segment (which is 16 MB on a workstation) for that. After that, all threads are suspended. In case of background GC, a separate ephemeral GC - gen0 and gen1 can be started, while the full GC - gen0, 1, and 2 - is already running.

The document .NET Framework (Part - 1), .NET Interview Questions | Placement Papers - Technical & HR Questions - Interview Preparation is a part of the Interview Preparation Course Placement Papers - Technical & HR Questions.
All you need of Interview Preparation at this link: Interview Preparation
85 docs|57 tests

Top Courses for Interview Preparation

FAQs on .NET Framework (Part - 1), .NET Interview Questions - Placement Papers - Technical & HR Questions - Interview Preparation

1. What is the .NET Framework?
Ans. The .NET Framework is a software development platform developed by Microsoft. It provides a comprehensive and consistent programming model for building applications that have visually stunning user experiences, seamless and secure communication, and the ability to model a range of business processes.
2. What are the key components of the .NET Framework?
Ans. The key components of the .NET Framework include the Common Language Runtime (CLR), the .NET Framework Class Library (FCL), and various development tools such as Visual Studio. The CLR is responsible for managing the execution of .NET programs, while the FCL provides a vast collection of pre-built classes and APIs for developers to use in their applications.
3. What is the purpose of the Common Language Runtime (CLR) in the .NET Framework?
Ans. The Common Language Runtime (CLR) is a key component of the .NET Framework that provides various services to applications, including memory management, exception handling, and security enforcement. It also enables the execution of code written in different programming languages by converting them into a common intermediate language (CIL) during compilation.
4. What are the advantages of using the .NET Framework for software development?
Ans. The advantages of using the .NET Framework for software development include increased productivity through the use of a rich set of libraries and tools, improved performance through just-in-time (JIT) compilation and native optimization, enhanced security features such as code access security and sandboxing, and cross-platform compatibility through the use of the .NET Core framework.
5. What is the relationship between the .NET Framework and .NET Core?
Ans. The .NET Framework and .NET Core are both implementations of the .NET platform. The .NET Framework is a mature and feature-rich implementation that primarily targets Windows-based desktop and server applications. On the other hand, .NET Core is a cross-platform and open-source implementation of .NET that is designed to run on Windows, macOS, and Linux. It provides a smaller footprint and greater flexibility for building modern, cloud-based applications.
85 docs|57 tests
Download as PDF
Explore Courses for Interview Preparation exam

Top Courses for Interview Preparation

Signup for Free!
Signup to see your scores go up within 7 days! Learn & Practice with 1000+ FREE Notes, Videos & Tests.
10M+ students study on EduRev
Related Searches

Previous Year Questions with Solutions

,

Semester Notes

,

Viva Questions

,

.NET Framework (Part - 1)

,

Extra Questions

,

past year papers

,

.NET Interview Questions | Placement Papers - Technical & HR Questions - Interview Preparation

,

Important questions

,

Sample Paper

,

video lectures

,

.NET Interview Questions | Placement Papers - Technical & HR Questions - Interview Preparation

,

Exam

,

MCQs

,

.NET Framework (Part - 1)

,

study material

,

.NET Framework (Part - 1)

,

mock tests for examination

,

Free

,

shortcuts and tricks

,

ppt

,

Objective type Questions

,

pdf

,

.NET Interview Questions | Placement Papers - Technical & HR Questions - Interview Preparation

,

Summary

,

practice quizzes

;