What is the difference between ref and out parameters in C#?

ref and out parameters are quite similar in their meaning. ref and out keywords are used to pass parameters to a method by reference. By default parameters are being passed to methods by value. Passing reference to variable instead of value means referenced variable might (or must) be modified/assigned by the method accepting this reference. The main difference is out parameters must be set during the execution of the method and ref parameters are not required to be set before returning. But there is more.

What is LINQ?

LINQ is a set of features that extends powerful query capabilities to the language syntax of C#. LINQ introduces standard, easily-learned patterns for querying and updating data, and the technology can be extended to support potentially any kind of data store. The .NET Framework includes LINQ provider assemblies that enable the use of LINQ with .NET Framework collections, SQL Server databases, ADO.NET Datasets, and XML documents.

Tools of encapsulation in C#, access modifiers in C#

Encapsulation, in the context of C#, refers to an object's ability to hide data and behavior that are not necessary to its user. Encapsulation is used to restrict access to the members of a class so as to prevent the user of a given class from manipulating objects in ways that are not intended by the designer.

What is ASP.NET MVC?

The ASP.NET MVC is a web application framework developed by Microsoft, which implements the model–view–controller (MVC) pattern. Based on ASP.NET, ASP.NET MVC allows software developers to build a web application as a composition of three layers: Model, View and Controller.

Describe bubble sort algorithm and write an example of implementation

Bubble sort, sometimes referred to as sinking sort, is a primitive sorting algorithm that repeatedly steps through the array of elements, compares each pair of adjacent items and swaps them if they are in the wrong order. The pass through the list is repeated until no swaps are needed, which indicates that the list is sorted. The algorithm, which is a comparison sort, is named for the way smaller elements "bubble" to the top of the list. Although the algorithm is simple, it is too slow and impractical for most problems.

What is a linked list and how it works? What are advantages and disadvantages of linked lists?

A linked list is a linear collection of data elements called nodes, pointing to the next node by means of pointer. It is a data structure consisting of a group of nodes which together represent a sequence. Under the simplest form, each node is composed of data and a reference (in other words, a link) to the next node in the sequence; but there are more complex variants, which introduce additional links. This structure allows for efficient insertion or removal of elements from any position in the sequence.