Showing posts with label java. Show all posts
Showing posts with label java. Show all posts

Sunday, October 2, 2011

INTERNET AND APPEARANCE LANGUAGE JAVA




   INTERNET AND APPEARANCE LANGUAGE JAVA 
   The next level of progress on the steps of programming languages ​​has become a language Java, which initially called Oak (translated from the English. "Oak").Work on its development started in 1991 by Sun Microsystems. The main driving force behind the development of Java, James Gosling was (James Gosling).
    Java - a structural object-oriented programming language syntax and principles which "kind" of C + +. His innovative aspects of Java must not so much progress in the art of programming (though it took place), but changes in the computer environment. Even before the advent of Internet, most programs were written, kompilyuvalysya and intended for use with a processor and running a particular operating system. Despite the fact that programmers have always sought to make their programs so that they can be used repeatedly, the ability to easily migrate application from one environment to another was not yet achieved, besides the problem of portability constantly vikladalysya, accomplished much more pressing problems. But with the advent of global network Internet, which were linked different types of processors and operating systems, the old problem of portability has declared itself in full voice. To fix it required a new programming language, and it was Java
   Interestingly, although the single most important aspect of Java (and the reason for the rapid recognition) can create cross-platform on it (compatible with multiple operating environments), portable code, the original impetus for the emergence of Java was not the Internet, and persistent demand for an independent fromplatform language that could be used in the process of creating software for embedded controllers. In 1993 it became clear that the problem of Cross-platform portability, which clearly proved in the creation code in embedded controllers, were also relevant when trying to write code for the Internet. For Internet - a great computing environment in which "lives" lots of different types of computers. And it turned out that the same methods of solving the problem of portability in a small scale can be successfully applied to a much larger, ie the Internet in Java portability is achieved by converting the source code into intermediate code, called byte-code), ie machine- independent code generated by Java-compiler.Byte-code runs a virtual machine Java (Java Virtual Machine - JVM) - a special operating system. So, Java-program could work in any environment where the available JVM. And since the JVM is relatively simple to implement, it quickly became available for many environments.
  
   Using the Java-bytecode programs radically distinguishes them from the C and C + + programs. If the C / C + + program to perform in another system, it must be recompiled to machine code corresponding to that environment.
   So, to create C / C + + program, designed to perform in different environments, you must have several different executable (machine) versions of this program. It was impractical and expensive. Conversely, the use for Java-language programs of the intermediate was an elegant and cost-effective solution. That this decision was adapted for the language C #.

Object-oriented programming


Object-oriented paradigm has given class hierarchy. Object-oriented programming metaphor B. Straustrupa, author of C + + - one of the most popular languages ​​for object-oriented programming - a highly intellectual synonymous with good programming. Indeed, new programming paradigms appear less frequently, not more than one per decade. The fact that object-oriented paradigm has been used successfully for 20 years, itself is an important confirmation of its viability.
The algorithms are implemented in procedural programming, too specific. Any modification - this is a new algorithm and thus the number of procedures and functions that are in use, excessive increases. Modular programming algorithms are grouped into modules, while inkapsulyuyuchy data structures. It now remains to take the next step - to build a hierarchy of modules or classes.
Such hierarchies may be two. The first of them - to be part of something. For example, the line is part of polyhedra, ridge - part of the face, top - part of the rib.Another hierarchy - to be a generalization or specification. For example, oval and polygon are specifying a plane figure, the circle - specifying an oval, quadrangle - specifying the polygon, quadrilateral further specification can serve as a parallelogram, rectangle, rhombus, square. The fact that a square, rhombus, rectangle is a parallelogram allows them full access to all software made for a parallelogram, a parallelogram, in turn, is a full quadrangle, and so on. This principle, known as reusable - again - Used became one of the most important achievements of object-oriented paradigm. Again, using already existing software in more concrete terms, we appends only the part concerning the characteristics of existing concrete. This principle was named programming by difference or posting programs.
Finally, object-oriented paradigm brings to the logical completion of the principle of modeling the real world, or rather the part, which serves as an abstraction program. With this approach, the program consists of objects that correspond to real objects or concepts. Implementation of the program is reduced to the interaction of objects, which serves as an abstraction of the real interaction prototypes. All this has provided an object-oriented approach is unquestionable leadership in developing programs.
Today the family of languages ​​object-oriented programming three most prominent representative: C + +, Java and C # (C Sharp read). C + +, and today remains a recognized leader in the development of large and complex software systems.Java and C # have grown up with C + +. They have their scope of application in distributed programming and will be studied by us later.
Related Posts Plugin for WordPress, Blogger...