Fundamentals on Web Application Development - BunksAllowed

BunksAllowed is an effort to facilitate Self Learning process through the provision of quality tutorials.

Community

Fundamentals on Web Application Development

Share This

Till now, probably you have already developed enough Java programs in your machine. These Java programs run in your system and hence they are generally termed Console ApplicationsBut, with the advancement of the Web, the days of Console Applications are gone and currently, the world is looking for Web Applications


Web Applications are programs that do not run within your system, rather they run on a server, and with different web protocols, users connect to that program and accordingly, they run it with their own input and get their output.


Web Applications are not developed with Java Technology alone, there are many different technologies present out there in the market and Java is a prominent candidate for all of them.


Here, we will learn a Java Technology called Servlet, with which you can develop your web applications. Please note that to develop a sophisticated web application you need to know a bunch of technology including servlets, but we feel that servlet technology is a good starting point. 


Before we proceed further, let us discuss two types of Web Applications, namely (A) Static Web Applications, and (B) Dynamic Web Applications.


Static Web Applications

Static Web Applications, generally loosely called Websites are such programs where the users do not have control over what to view as the result of the program that is there on the server.


To develop these sorts of applications, you need to be much more careful about generating a quality view of your program that runs on the Server.


To master the art of developing static web applications, you need to primarily learn HTML and other User Interface Technologies.


Dynamic Web Applications

Dynamic Web Applications are different from what we discussed above in the sense that here, you as a user enjoy much control in using the program, even if it stays in a server remote from you.


Let us take an example, suppose you are using GMAIL as your free mailing app, in that case, you can customize the background of your inbox, you can choose how many emails you want to view on a single page, can create your own vacation message, and so on.


That means the GMAIL program which is there in a remote server has the ability to incorporate your input and accordingly generate output. So while developing Dynamic Web Applications, there are two things to consider

  • How efficiently we can incorporate the user's input and accordingly generate output as per the business logic; and
  • How efficiently we can present the user back with whatever the result comes to be.

To implement the second point, we need to know the HTML and other User Interface technologies and for the first point, we need to know certain programming paradigms that let you write programs in servers. Servlet Technology is just that which lets you write Java-based programs in the server environment.


In forthcoming tutorials, we will learn how we can develop dynamic web applications with a Java-based technology called Servlet. But before jumping into the Servlet technology, let us formalize the following concept that there is a basic flow of actions in every Web Applications, be it static or dynamic, be it developed with Java or any other technologies and that is,

a user has to request some resources in the server, it might be a static page or a particular application feature like logging in, etc. by initiating an event like typing a URL in the address bar, or by clicking a button in the web page or anything similar.


As per the request, the server will provide that resource directly from its file system(if it is a static page) or will run a program already written by the developers and will generate the result. This result will be sent back to the user as a response to the user's request.


The request that you, as a user, initiate from your local machine's browser, flies to a remote server, the server decides what to give you back, runs some program accordingly, and generates some response; and finally the response flies back to your browser from that remote server.


Now you might be wondering how the request and response can be sent? Generally, they are carried over a web protocol called as HTTP (Hyper Text Transfer Protocol). Don't worry, we will learn all these things one by one.


No comments: