본문 바로가기
Java 배우기

About the Java Technology 자바 기술

by 노화방지 Anti-aging Hairstyle 2016. 1. 5.
반응형


자바 기술은 프로그래밍 언어이며 플랫폼입니다.
Java technology is both a programming language and a platform.


자바 기술이란 무엇이고 필요한 이유는 무엇입니까?


자바는 Sun Microsystems가 1995년에 처음 출시한 프로그래밍 언어이자 컴퓨팅 플랫폼으로, 현재 수 많은 애플리케이션 및 웹사이트가 자바 없이는 작동되지 않으며, 그 수는 점점 늘어나고 있습니다.
자바는 빠르고, 안전하며, 안정적입니다.
랩톱에서 데이터센터, 게임 콘솔에서 과학용 수퍼컴퓨터, 휴대전화에서 인터넷에 이르기까지 자바 기술은 어디에나 존재합니다.


자바 프로그래밍 언어 The Java Programming Language


자바 프로그래밍 언어는 다음과 같은 유행어로 특징지어지는 고-수준의 언어입니다.
The Java programming language is a high-level language that can be characterized by all of the following buzzwords:


  • 단순 Simple
  • 객체 지향 Object oriented
  • 분산 Distributed
  • 멀티쓰레드 Multithreaded
  • 동적 Dynamic
  • 아키텍쳐 중입 Architecture neutral
  • 이동성 Portable
  • 고성능 High performance
  • 강력 Robust
  • 안전 Secure


앞선 유행어 각각은 The Java Language Environment에 설명되어 있는데, 이 설명서는 James Gosling 및 Henry McGilton이 작성한 백서입니다.

자바 프로그래밍언어에서, 모든 소스 코드는 1차로 .java extension으로 끝나는 평문텍스트로 작성됩니다.
이들 소스 파일은 그런 다음 javac compiler에 의하여 .class files로 컴파일 됩니다.
.class 파일에는 your processor에 네이티브 한 코드가 포함되지 않습니다; 대신 Java Virtual Machine1 (Java VM)의 기계언어인 contains bytecodes가 포함됩니다.
그러면
java launcher tool이 Java Virtual Machine의 인스턴스로 애플리케이션을 가동시킵니다.

Each of the preceding buzzwords is explained in The Java Language Environment , a white paper written by James Gosling and Henry McGilton.

In the Java programming language, all source code is first written in plain text files ending with the .java extension. Those source files are then compiled into .class files by the javac compiler. A .class file does not contain code that is native to your processor; it instead contains bytecodes — the machine language of the Java Virtual Machine1 (Java VM). The java launcher tool then runs your application with an instance of the Java Virtual Machine.


Figure showing MyProgram.java, compiler, MyProgram.class, Java VM, and My Program running on a computer.

An overview of the software development process.



Java VM은 서로 다른 많은 운영시스템에서 사용될 수 있기 때문에, 같은 .class files을  Microsoft Windows, the Solaris™ Operating System (Solaris OS), Linux, 또는 Mac OS에서 가동시킬 수 있습니다.
Java SE HotSpot at a Glance와 같은 일부 가상머신은 application에 performance boost를 주기 위하여 가동시점에 추가적 조치를 수행합니다.
여기에는 performance bottlenecks 찾기 및 recompiling (to native code) frequently used sections of code와 같은 다양한 과제가 포함됩니다.

Because the Java VM is available on many different operating systems, the same .class files are capable of running on Microsoft Windows, the Solaris™ Operating System (Solaris OS), Linux, or Mac OS. Some virtual machines, such as theJava SE HotSpot at a Glance, perform additional steps at runtime to give your application a performance boost. This includes various tasks such as finding performance bottlenecks and recompiling (to native code) frequently used sections of code.


Figure showing source code, compiler, and Java VM's for Win32, Solaris OS/Linux, and Mac OS

Through the Java VM, the same application is capable of running on multiple platforms.


자바 플랫폼 The Java Platform


platform은 프로그램이 가동되는 하드웨어 또는 소프트웨어 환경니다.
Microsoft Windows, Linux, Solaris OS, 그리고 Mac OS과 같은 가장 유행인 몇몇 플랫홈을 언급한 바 있습니다.

대부분의 플랫폼은 operating system and underlying hardware의 조합으로 설명할 수 있습니다.
자바 플랫폼은 다른 하드웨어-기반 플랫폼의 위에서도 가동되기 때문에 대부분의 다른 플랫폼과 다릅니다.
자바 플랫폼은 2개의 구성요소를 갖고 있습니다:
platform is the hardware or software environment in which a program runs. We've already mentioned some of the most popular platforms like Microsoft Windows, Linux, Solaris OS, and Mac OS. Most platforms can be described as a combination of the operating system and underlying hardware. The Java platform differs from most other platforms in that it's a software-only platform that runs on top of other hardware-based platforms.

The Java platform has two components:

  • 자바 가상 머신 The Java Virtual Machine
  • 자바 애플리케이션 프로그래밍 인터페이스(API) The Java Application Programming Interface (API)

You've already been introduced to the Java Virtual Machine; it's the base for the Java platform and is ported onto various hardware-based platforms.

The API is a large collection of ready-made software components that provide many useful capabilities. It is grouped into libraries of related classes and interfaces; these libraries are known as packages. The next section, What Can Java Technology Do? highlights some of the functionality provided by the API.

Figure showing MyProgram.java, API, Java Virtual Machine, and Hardware-Based Platform

The API and Java Virtual Machine insulate the program from the underlying hardware.


As a platform-independent environment, the Java platform can be a bit slower than native code. However, advances in compiler and virtual machine technologies are bringing performance close to that of native code without threatening portability.

The terms"Java Virtual Machine" and "JVM" mean a Virtual Machine for the Java platform.




반응형

댓글