A closure is an inner function that has access to the outer (enclosing) function’s variables — scope chain. The closure has three scope chains: it has access to its own scope (variables defined between its curly brackets), it has access to the outer function’s variables, and it has access to the global variables.
A comprehensive list of technical interview questions and answers for software developers
Why it is a good idea to wrap the entire content of a JavaScript source file in a function block?
This technique creates a closure around the entire contents of the file which creates a private namespace and thereby helps avoid potential name clashes between different JavaScript modules and libraries. Closure is a mechanism to declare "private" variables in JavaScript. You can learn more about closures here.
Basic CSS selectors
In CSS, selectors are what allows you to target specific HTML elements and apply style to them. There are many selectors, which were added during evolution of Cascading Style Sheets (versions 1, 2, 3). Most basic and most used of them were added in versions 1 and 2, while CSS 3 focuses on more specizlized ones.
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.
Explain principles of FIFO (queue) and LIFO (stack) in data structures
FIFO and LIFO are commonly heard terms when discussing many different fields. It is also a popularly used method in computing and accounting. Meaning of this abbreviations are, respectively: first in, first out and last in, first out. LILO (Last In, Last Out) is synonymous with FIFO and FILO (First In, Last Out) is synonymous with LIFO.
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.
What is the JIT-compiler?
JIT (just-in-time) compilation converts MSIL to native code on demand at application run time, when the contents of an assembly are loaded and executed. Because the common language runtime supplies a JIT compiler for each supported CPU architecture, developers can build a set of MSIL assemblies that can be JIT-compiled and run on different computers with different machine architectures.
What is attribute in C#?
Basically, attribute is an information (metadata) that can be attached to your method, class, namespace, assembly etc. Once associated with a program entity, the metadata provided by an attribute can be queried at run time by using a technique called reflection and used in many ways.
What is ASP.NET Web Forms?
ASP.NET Web Forms is a part of the ASP.NET web application framework. It is one of the three programming models you can use to create ASP.NET web applications, the others are ASP.NET MVC and ASP.NET Web Pages.
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.