Application Development Key Concepts. Concepts for Discussion Stand-Alone Application Client Server...

Post on 20-Jan-2016

215 views 1 download

transcript

Application Development

Key Concepts

Concepts for Discussion

Stand-Alone Application Client Server Architecture 2-Tier and 3-Tier Applications Front-End & Back-End Tools

Stand-Alone Applications

Application & data reside on same computer Dedicated & Single User Powerful & economical Examples: Calculator, MS-Word

Client Server Architecture

Distinguishes client systems from server systems, both of which have the processing Power.

A client application initiates a request and send it to the server ,the server waits for requests from any client, processes the request and send a reply

The most basic type of client-server architecture employs only two types of hosts: clients and servers.

In a DB Applications, clients are most often the user applications which initiates a communication with Servers typically database servers

2-Tier & 3-Tier Applications

Instead of Fat clients and fat servers these terms can be used.

It is all about how to split the client/server applications into functional units.

These functional units can be assigned to either the client or to one or more servers.

In 2-tier, the application logic is either buried inside the User Interface on the client or within the database on the server (or both)

2-tier system examples: File Servers and Database Servers with stored procedure.

In 3-tier, the application logic (or) process lives in the middle-tier, it is separated from the data and the user interface.

3-tier systems are more scalable, robust and flexible. In addition, they can integrate data from multiple sources.

Examples: Distributed Objects and the Web.

3-tier Application

tier 1 - Client

tier 2 - Application Server

tier 3 - Database Server

Front-End & Back-End Tools

A "front-end" application is one that application users interact with directly.

A "back-end" application or program serves indirectly the front-end services

Closer to the required resource or having the capability to communicate with the required resource.

The back-end application may interact directly with the front-end or a program called from an intermediate program that mediates front-end and back-end activities.

For Data Base Applications Front-End tools-Vb, .Net, VC++, MS-Access

etc. Back-End Tools- MS-Access, Oracle,

SQL-Server, MySQL etc.