A very helpful article for IT sector beginners . Gided by Bipin Ajay
Advantages of Java
This section is to give the answer of �Why Java? �. Following points are included as answer of this question.
Easy Development of Large Applications
Object oriented methodology in Java enables the software system developers to develop large complex applications with a little effort. Experienced software developers understands that software systems are dynamic in nature i.e. in continuous evolution. Keeping this in mind, the dynamic binding in Java can be utilized to furnish a surprising advantages of code reusability. Here, unlike C++, a change of a base class need not require to recompile of derived classes. Application can be embedded dynamically. Here, linkage manipulations are deferred until run time. This concept envisages easy to modification and ability to upgrade in the existing system
Simple, Portable, and Robust Programming
Writing Java code is almost English like and is similar to writing codes in other programming languages.
Java programs are portable because they can be executed in any environment without any substantial change. The Java bytecodes are independent of any underlying architecture, characters are uni-code based for internationally portable applications. If one use certain I/O classes, one can render data portable on Java code. For example, the DataInputStream and DataOutputStream, there are two classes in Java, utilize external data representation to normalize one�s data to a network format. In other words, data can be used by many different types of processors and machines. Currently, Java run time environments exists are SolariesTM 2.x, (SPARC and x86), Win32 (Windows 95 and Windows NT), OS/2, Macintosh Systems 7.5 for Power PCs, HP/Unix etc.
Java programs are robust because there is no need of explicit memory manipulation. Memory address cannot be deferred nor can pointer arithmetic be used to access object contents. Array bounds are checked so that array indices are never out-of-bounds.
High Performance of Java
Already mentioned that execution of programs in Java is a two steps process compile half way and interpret half way. But why an interpreter?
An interpreter reads every line, converts it into machine code of the system and then execute it . Every line of source code has to be converted to machine code every time it executes making the application painfully slow. On the other hand, compiler compiles the entire source code into machine code before starting the execution and speed up the overall process. The only draw backs with the compiler is that an executabel code can work only on one type of system often specific to an operating system. You can not compile code if you have no knowledge of the machine you are compiling it for.
But to match the same program into various environment. It was studied that the simplest solution is to look for an interpreter. Interpreter being as slow as they are, and compiled code being as fast as it is, the Java developer therefore decided to strike the middle ground in order to optimize the whole. In fact, most commands of one CPU machine code match with those of another, instruction to load and move data, to add and subtract numbers etc. form the basic building blocks of assembly programming and are often similar. Therefore, translating the source code into JVM code and then to that of, say, for Pentium, would not be as slow as in conventional interpreting. It is realized that by making a little compromise both ways, much has been achieved – the high performance computing environment.
Internet Access Capability
It is well known that marriage of computer and communication gave the birth to today�s information society. After the successful maturity of ARPANET (Advanced Research Projects Agency Network), now Internet is a rapidly evolving network of networks, which essentially consists of very powerful computing systems with a variety of capabilities through a high speed (even with the speed of light) and large band width communication channels. To be sure, Internet facilitating communication among the computers connected in it and data or information can be conveniently transferred to and from any computer, anywhere in the world at the click of mouse. Through the Internet, a chunk of information can be simultaneously shared and read by people scattered around the globe. Information over the Internet is actually multimedia, which include text, graphics, images and sound. With Internet there is Web (short for World Wide Web, more commonly also written as WWW ). It is a wide area hypermedia (also called hypertext) information retrieval system, introduced by a group of physicists at the CERN European Laboratory for Particle Physics in Geneva, Switzerland in 1991. Web is to facilitate online documentation to give universal access to a very large universe of documents. WWW on the Internet utilize hyperlinks to make immediate network connectivity to any site of the world.
It was a challenge to create a document that looked like a simple document to a user on a computer system, but were actually spread across multiple systems in different parts of the world. But with the WWW and the Internet boom, the whole world is now a simple page.
The Java programming concept is now poised to change the way Internet is currently being used. Currently hypertext documents comprise multimedia i.e. combination of text, data, audio, graphics, pictures – still or movie. Maintaining and retrieving such a multimedia base hypertext is a technological challenge to Internet people. For an example, if a web document with features that include non standard/ incompatible extension to the html are made, most Browser may ignore them because the underlying computer systems (clients) are incapable of supporting them. In addition, the transmission of multimedia based documents over the network involved a large channel band width – as a consequence, such documents may not be transmitted in their complete form on most client systems. Moreover, documents may run into trouble. This is because, the code marked in the text by the composer is specific to the local processor and operating system and hence may not be executed in the client systems.
Given these problems to the Internet people, here is an obvious need to devise a programming language which can yield a sophisticated, system independent hypertext so that user from different system compatibility can share information. Truly speaking, Java is to turn Internet and WWW into one giant computer so that Net and Web will be common storehouse for billion of data and application unit. One can down load the required application from the Net into one�s system, use it and it will be automatically deleted from the system after it use.
Distributed Computing with Java
Java is the first concrete example that moves to component and distributed computing. It envisages a new type of programming environment in which a program is truly task oriented and disposable. One can enjoy the benefits of the execution of ready made compiled code as single statement which can be dynamically down loaded from any where (may be too remote ) in the network of heterogeneous systems and executed transparently. This is the dream most software developer have had for years
Thanking you
Tech Jitendra
