Why use Java? Is it good to use a language and a new platform? Find the reasons why it has become so popular and how it helps to develop large-scale, multi-tiered, scalable, reliable, and secure applications.
Write once, Runs Anywhere
Sun identifies “Write once, run anywhere” as the core of the Java platform. It means that it promises simplicity when you need to create your application. Develop your app in Java and after that you’ll be able to run it anywhere. Anywhere that supports the Java system. Fortunately, Java assistance is coming to be omnipresent. It is integrated, or being integrated, in almost all operating systems. It is also built into the web browsers, which positions it on practically every Internet-connected device around the world. It also being built into consumer digital devices, such as TV set-top boxes, PDAs, and smartphone.
One more key advantage of Java is its security functions. Both the language and the system were made from the ground up with security in thoughts. The Java system allows users to download untrusted code over a network and run it in a protected environment in which it can refrain from doing any sort of harm: it could not infect the host system with a virus, can not read or write files from the hard drive, and so forth. This capacity alone makes the Java system special.
The Java 2 Platform takes the security model a step additionally. It makes security levels and restrictions very configurable and prolongs them past applets. Since Java 1.2, any sort of Java code, whether it is an applet, a servlet, a JavaBeans component, or a comprehensive Java application, can be kept up restricted approvals that stop it from doing harm to the host system.
The security features of the Java language and platform have been subjected to extreme examination by security professionals around the world. Security-related insects, a few of them possibly severe, have been found and without delay repaired. As a result of the security assures Java makes, it allows information when a new security insect is discovered. Remember, nevertheless, that no other mainstream platform could make security assurances virtually as solid as those Java makes. If Java’s security is not yet best, it has been shown strong enough for sensible daily use and is definitely better than any of the alternatives.
Sun’s business motto has constantly been “The network is the computer system.” The developers of the Java system counted on the significance of networking and developed the Java platform to be network-centric. From a programmer’s viewpoint, Java makes it unbelievably simple to deal with resources across a network and to develop network-based applications utilizing client/server or multitier architectures. This suggests that Java programmers have a significant head start in the arising network economic situation.
Dynamic & Extensible Programs
Java is both dynamic and extensible. Java code is arranged in modular object-oriented units called lessons. Courses are saved in different documents and are loaded right into the Java interpreter simply when required. This implies that an application can choose as it is running what courses it requires and could fill them when it needs them. It additionally means that a program could dynamically extend itself by packing the lessons it has to expand its capability.
The network-centric design of the Java system implies that a Java application could dynamically extend itself by loading new lessons over a network. An application that takes advantage of these functions discontinues to be a monolithic block of code. Instead, it becomes a communicating collection of independent software elements. Thus, Java makes it possible for an effective brand-new metaphor of application layout and development.
The Java language and the Java system were designed from the beginning with the remainder of the world in mind. Java is the only typically made use of programs language that has internationalization features at its actual core, instead of added as a second thought. While many shows languages utilize 8-bit characters that represent simply the alphabets of English and Western European languages, Java makes use of 16-bit Unicode characters that stand for the phonetic alphabets and ideographic personality collections of the entire world. Java’s internationalization functions are not restricted to merely low-level character representation, nonetheless. The functions go through the Java platform, making it less complicated to write internationalized programs with Java compared to it is with any other atmosphere.
As I explained previously, Java programs are compiled to a mobile intermediate form known as byte codes, rather than to native machine-language instructions. The Java Virtual Equipment runs a Java program by interpreting these portable byte-code guidelines. This architecture indicates that Java programs are faster than programs or scripts written in totally interpreted languages, yet they are typically slower than C and C++ programs collected to indigenous machine language. Remember, nonetheless, that although Java programs are put together to byte code, not all of the Java system is carried out with analyzed byte codes. For performance, computationally intensive parts of the Java system– such as the string-manipulation methods– are carried out making use of native machine code.
Although very early launches of Java struggled with performance issues, the rate of speed of the Java VM has enhanced considerably with each new release. The VM has been very tuned and enhanced in numerous substantial means. Additionally, lots of implementations include a just-in-time compiler, which transforms Java byte codes to indigenous equipment instructions on the fly. Making use of advanced JIT compilers, Java programs could execute at speeds similar to the rate of speeds of native C and C++ applications.
Java is a portable, interpreted language; Java programs run nearly as fast as native, non-portable C and C++ programs. Performance used to be a concern that made some programmers prevent making use of Java. Now, with the improvements made in Java 1.2, performance concerns should no more maintain anybody away. As a matter of fact, the winning combo of performance plus portability is an one-of-a-kind function no other language could supply.
Programmer Efficiency and Time-to-Market
The last, and probably the most important reason to use Java is that programmers like it. Java is a stylish language incorporated with a powerful and properly designed collection of APIs. Programmers appreciate configuring in Java and are usually amazed at how promptly they can acquire outcomes with it. Research studies have actually constantly shown that switching over to Java enhances programmer performance. Because Java is an easy and classy language with a well-designed, intuitive collection of APIs, programmers create far better code with less bugs than for various other systems, again reducing development time.