4.25. What is two-tier architecture?

The two-tier architecture is refers to client/ server architectures as well, the term client/ server was first used in the 1980s in reference to personal computers (PCs) on a network. The actual client/ server model started gaining acceptance in the late 1980s, and later it was adapted to World Wide Web programming.

According to the modern days use of two-tier architecture the user interfaces (or with ASP.NET, all web pages) runs on the client and the database is stored on the server. The actual application logic can run on either the client or the server. So in this case the user interfaces are directly access the database. Those can also be non-interface processing engines, which provide solutions to other remote/ local systems. In either case, today the two-tier model is not as reputed as the three-tier model. The advantage of the two-tier design is its simplicity, but the simplicity comes with the cost of scalability. The newer three-tier architecture, which is more famous, introduces a middle tier for the application logic.

2-Tier.jpg

4.26. What is three-tier architecture?

The three tier software architecture (also known as three layer architectures) emerged in the 1990s to overcome the limitations of the two tier architecture. This architecture has aggressively customized and adopted by modern day system designer to web systems.

Three-tier is a client-server architecture in which the user interface, functional process logic, data storage and data access are developed and maintained as independent modules, some time on separate platforms. The term "three-tier" or "three-layer", as well as the concept of multi-tier architectures (often refers to as three-tier architecture), seems to have originated within Rational Software.

3-Tier.jpg

The 3-Tier architecture has the following three tiers.
  1. Presentation Tier or Web Server: User Interface, displaying/ accepting data/ input to/ from the user
  2. Application Logic/ Business Logic/ Transaction Tier or Application Server: Data validation, acceptability check before being added to the database and all other business/ application specific operations
  3. Data Tier or Database server: Simple reading and writing method to database or any other storage, connection, command, stored procedures etc

4.27. What is MVC architecture?

The Model-View-Controller (MVC) architecture separates the modeling of the domain, the presentation, and the actions based on user input into three separate classes.

Unfortunately, the popularity of this pattern has resulted in a number of faulty usages; each technology (Java, ASP.NET etc) has defined it in their own way making it difficult to understand. In particular, the term "controller" has been used to mean different things in different contexts. The definitions given bellow are the closes possible ones I found for ASP.NET version of MVC.

mvc.jpg

  1. Model: DataSet and typed DataSet (some times business object, object collection, XML etc) are the most common use of the model.
  2. View: The ASPX and ASCX files generally handle the responsibilities of the view.
  3. Controllers: The handling of events or the controlling is usually done in the code-behind class.
In a complex n-tier distributed system the MVC architecture place the vital role of organizing the presentation tier of the system.
Re: Asp.net - difference between Association , Aggregation and Inheritance
In object oriented world objects have relation and
hierarchies in between them. There are
basically three kind of relationship in Object Oriented
world :-

Association :-
This is the simplest relationship between objects. Example
every customer has sales. So
Customer object and sales object have an association
relation between them.

Aggregation:-
This is also called as composition model. Example in order
to make a “Accounts” class it
has use other objects example “Voucher”, “Journal”
and “Cash” objects. So accounts
class is aggregation of these three objects.

Inheritance:-
ierarchy is used to define more specialized classes based
on a preexisting generalized
class. Example we have VEHICLE class and we can inherit
this class make more
specialized class like CAR, which will add new attributes
and use some existing qualities
of the parent class. Its shows more of a parent-child
relationship. This kind of hierarchy
is called inheritance.

Explain an object.

An object is an entity that keeps together state and behaviors. For instance, a car encapsulates state such as red color, 900 cc etc and behaviors as 'Start', 'Stop' etc., so does an object.

An object is an instance of a class. If you consider “Dog” as a class, it will contain all possible dog traits, while object “German Shepherd” contains characteristics of specific type of dog.

Define a class.

A class represents description of objects that share same attributes and actions. It defines the characteristics of the objects such as attributes and actions or behaviors. It is the blue print that describes objects.

What is Method?

Method is an object’s behavior. If you consider “Dog” as an object then its behaviors are bark, walk, run etc.

Oops - Object, classes and methods - Jan 12, 2009 at 11:14 AM by Vidya Sagar

Why are classes important?

A class is the fundamental entity in OOP. The functionality, data need to be well defined in a class. The need, flow and actual functionality is to be well defined, structured in a class first, without which OOP can not be done.

Explain the desirable qualities of an object.

An object must instantiate a well defined class. Using an object the following features should be adhered

Modularity: The operations / methods should be defined separately for each module of the software project. One of the objects’ features can be used by other object as a reusable component.

Information Hiding: The data about one object should exclusively belong to that object, which enables the individual modules focuses on specific functionality.

Re-usability of code: An object of one class should have the same functionality that of another. Same code could be usable by all objects of one class. There should not be mismatching of the functionality of one object to that of another.

Describe the role of inetinfo.exe, aspnet_isapi.dll andaspnet_wp.exe in the page loading process.
inetinfo.exe is theMicrosoft IIS server running, handling ASP.NET requests among other things.When an ASP.NET request is received (usually a file with .aspx extension), the ISAPI filter aspnet_isapi.dll takes care of it by passing the request tothe actual worker process aspnet_wp.exe.