2nd Round Intrview
2nd Round Intrview
2nd Round Intrview
General
Familiarity with the project they are currently working on. (Talk about overall
business case and their role)
Ability to articulate design decisions and technology used (Ask Why and How
questions)
ASP.NET Webforms
State Management in ASP.Net (include ViewState / SessionState)
Page lifecycle (see if the candidate can talk details about PostBack)
User controls (How to create one ?)
Custom Controls
The web.config files specify configuration settings for a particular web application, and
are located in the application's root directory; the machine.config file specifies
configuration settings for all of the websites on the web server, and is located in
$WINDOWSDIR$\Microsoft.Net\Framework\Version\Config.
The web. config files specify configuration settings for a particular web application, and are located in the
application's root directory; the machine. config file specifies configuration settings for all of the websites
on the web server, and is located in $WINDOWSDIR$Microsoft.NetFrameworkVersionConfig
A web service is any piece of software that makes itself available over the internet
and uses a standardized XML messaging system. ...
Web services are self-contained, modular, distributed, dynamic applications that
can be described, published, located, or invoked over the network to create
products, processes, and supply chains. ...
Web services are XML-based information exchange systems that use the Internet
for direct application-to-application interaction. These systems can include
programs, objects, messages, or documents.
A web service is a collection of open protocols and standards used for exchanging
data between applications or systems. ...
AJAX / JQuery
AJAX is a technique used for making requests from the browser to the server for various purposes
such as the retrieval of assorted content including data, HTML, XML, posting form values and so
on. Requests are initiated from client script (usually JavaScript) once the page has already been
loaded in the browser. Traditionally, the browsers' built in XMLHttpRequest object i…
JSON is an open standard file format and data interchange format that uses human-readable text to store
and transmit data objects consisting of attribute–value pairs and arrays. It is a common data format with
diverse uses in electronic data interchange, including that of web applications with servers.
Syntax errors
Run-time errors
Logic errors
Publishing creates the set of files that are needed to run your application, and
you can deploy the files by copying them to a target machine.
Global. asax is an optional file which is used to handling higher level application events such as
Application_Start, Application_End, Session_Start, Session_End etc. It is also popularly known as
ASP.NET Application File. This file resides in the root directory of an ASP.
.
What is Caching?
Caching is a technique of storing frequently used data/information in memory, so
that, when the same data/information is needed next time, it could be directly
retrieved from the memory instead of being generated by the application.
Caching is extremely important for performance boosting in ASP.NET, as the pages
and controls are dynamically generated here. It is especially important for data
related transactions, as these are expensive in terms of response time.
Caching places frequently used data in quickly accessed media such as the random
access memory of the computer. The ASP.NET runtime includes a key-value map
of CLR objects called cache. This resides with the application and is available via
the HttpContext and System.Web.UI.Page.
In some respect, caching is similar to storing the state objects. However, the storing
information in state objects is deterministic, i.e., you can count on the data being
stored there, and caching of data is nondeterministic.
The data will not be available in the following cases:
ADO.NET provides a bridge between the front end controls and the back end database. The
ADO.NET objects encapsulate all the data access operations and the controls interact with
these objects to display data, thus hiding the details of movement of data.
ASP.NET Webforms
State Management in ASP.Net (include ViewState / SessionState)
ASP.NET Webforms:
ASP.NET is an open-source, server-side web-application framework designed for web development to produce
dynamic web pages. It was developed by Microsoft to allow programmers to build dynamic web sites,
applications and services.
View State is one of the methods of the ASP.NET page framework used to preserve and store
the page and control values between round trips. It is maintained internally as a hidden field
in the form of an encrypted value and a key.
In ASP.NET session is a state that is used to store and retrieve values of a user.
It helps to identify requests from the same browser during a time period (session).
It is used to store value for the particular time session. By default, ASP.NET
session state is enabled for all ASP.NET applications.
Page lifecycle (see if the candidate can talk details about PostBack)
Some parts of the life cycle occur only when a page is processed as a postback. For postbacks, the
page life cycle is the same during a partial-page postback (as when you use an UpdatePanel control)
as it is during a full-page postback. The page request occurs before the page life cycle begins.
PostBack is the name given to the process of submitting all the information that
the user is currently working on and send it all back to the server. Postback is
actually sending all the information from client to web server, then web server
process all those contents and returns back to client. A postback originates from
the client side browser.
What is custom control?
CustomControl is a loosely coupled control w.r.t code and UI while UserControl
is a tightly coupled control
Custom Controls:
Custom controls are deployed as individual assemblies. They are compiled into a
Dynamic Link Library (DLL) and used as any other ASP.NET server control. They
could be created in either of the following way:
ViewData
1. ViewData is a dictionary object that is derived from ViewDataDictionary
class.
2. public ViewDataDictionary ViewData { get; set; }
ViewBag
1. ViewBag is a dynamic property that takes advantage of the new dynamic
features in C# 4.0.
2. Basically it is a wrapper around the ViewData and also used to pass data
from controller to corresponding view.
3. public Object ViewBag { get; }
TempData
1. TempData is a dictionary object that is derived from TempDataDictionary
class and stored in short lives session.
2. public TempDataDictionary TempData { get; set; }
Unmanaged Code. The unsafe code or the unmanaged code is a code block that
uses a pointer variable. The unsafe modifier allows pointer usage in unmanaged
code.
Example
Managed Code. Managed code is a code whose execution is managed by Common
Language Runtime. It gets the managed code and compiles it into machine code.
Managed Code Unmanaged Code
MSIL/JIT
The Microsoft Intermediate Language (MSIL) also goes by the name Common Intermediate
Language (CIL). It is typically a set of platform-independent instructions created from source code
by a language-specific compiler. It is produced by a variety of compilers (C#, VB,.NET, and so
on). The ILDasm (Intermediate Language Disassembler) software included in the.NET
Framework SD…
What is a JIT compiler?
The JIT compiler then converts the Microsoft Intermediate Language (MSIL) into the
machine code that is specific to the computer environment that the JIT compiler runs
on. The MSIL is converted into the machine code on a requirement basis i.e. the JIT
compiler compiles the MSIL as required rather than the whole of it.
What is Finalize/Dispose?
computer science, garbage collection (GC) is a form of automatic memory management. The garbage
collector attempts to reclaim memory which was allocated by the program, but is no longer referenced—
also called garbage.
What is a Thread?
The execution of process code by tracking the instructions one after the other in the
process is called threads. Threads control the process and each thread represents
the control of the code. The tasks are run in parallel and it is the subset of the
process.
Information such as code and data related and the open files are shared between
threads. When changes are made in one thread, the alterations are seen by other
threads as well. Threads in the same process share the memory space and address
space.
Overloading
No keyword is used during overloading.
The prototype differs only based on the number or type of parameter.
It happens during compile time.
Constructors can be overloaded.
Destructor can’t be overloaded.
It can be used to achieve early binding.
The version of function being called is determined by the number or type of
parameter being used.
The functions would be redefined with the same name, different number or
type of parameters.
Overriding
The prototype remains same throughout.
It occurs at runtime.
Virtual functions can’t be overridden.
Destructor can be overridden.
Overriding is also known as late binding.
The function that would be overridden is preceded by the ‘virtual’ keyword in
the base class.
The address of the class’s object is assigned to the pointer whose function is
called by the pointer.
When the function is defined, it is preceded by ‘virtual’ keyword in main class.
The same function is redefined in derived class using ‘out’ keyword.
What is virtual function ?
A virtual function is a special form of member function that is declared within a base class
and redefined by a derived class. The keyword virtual is used to create a virtual function,
precede the function's declaration in the base class. If a class includes a virtual function and
if it gets inherited, the virtual class redefines a virtual function to go with its own need.
What is inheritance?
Inheritance is an Object Oriented Programming (OOP) feature that allows the properties of an object
to be used by different objects.
Abstract classes may or may not contain abstract methods, i.e., methods without
body ( public void get(); )
But, if a class has at least one abstract method, then the class must be declared
abstract.
What is an interface?
When referring to software, an interface is a program that allows a user to interact computers
in person or over a network. An interface may also refer to controls used in a program that
allow the user to interact with the program.
What is thread synchronization?
Thread synchronization is the concurrent execution of two or more threads that share critical
resources. Threads should be synchronized to avoid critical resource use conflicts. Otherwise,
conflicts may arise when parallel-running threads attempt to modify a common variable at the same
time.
Serial
No IP address Port Number
Internet Protocol address (IP
address) used to identify a host Port number is used to identify an
01. in network. processes/services on your system
IP address is the address of the Port number is the address of the layer-4
03. layer-3 IP protocol. protocols.
192.168.0.2, 172.16.0.2 are 80 for HTTP, 123 for NTP, 67 and 68 for
07. some of IP address examples. DHCP traffic, 22 for SSH etc.