썬마이크로시스템즈의 제임스 고슬링과 다른 연구원들이 개발한 객체지향적 프로그래밍 언어. 현재 대표적인 프로그래밍 언어라고 볼 수 있으며, 웹 어플리케이션 개발에 가장 많이 사용된다.
java는 위키피디아에서 다음과 같이 설명하고 있다.
자바 개발자들은 유닉스 기반의 배경을 가지고 있었기 때문에 문법적인 특정은 C언어와 비슷하다. java의 가장 큰 특징 중 하나는 컴파일된 코드가 플랫폼 독립적이라는 점이다. 자바 컴파일러는 자바 언어로 작성된 프로그램을 바이트 코드라는 특수한 바이너리 형태로 변환한다. 바이트코드는 JVM(Java Virtual Machine)에서 실행할 수 있다. 이 가상 머신을 통해 자바 바이트코드를 어느 플랫폼에서나 동일한 형태로 실행시킬 수 있다.
즉, 자바로 개발된 프로그램은 cpu, 운영체제 종류와 상관없이 JVM을 설치할 수 있는 시스템에서는 어디서나 동일한 형태로 실행할 수 있다. 이러한 java의 특성은 웹 어플리케이션 개발언어로 요구되는 바와 일치했기 때문에 java는 대표적인 웹 프로그래밍 언어로 자리 잡을 수 있었다고 한다.
.java
소스코드를 컴파일한 바이트코드(.class
)를 읽고, 검증, 실행함. 동일한 실행환경을 보장받음baechaeyun@MacBook-Pro ~ % java -version
java version "1.8.0_281"
Java(TM) SE Runtime Environment (build 1.8.0_281-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.281-b09, mixed mode)
아파치 톰캣은 웹서버 소프트웨어중 하나. 특히 자바 서블릿/JSP 기반의 웹 프로그램을 실행하기 위해 필요한 Server Runtime 이다. 컨테이너, 웹 컨테이너, 서블릿 컨테이너라고도 불린다. jsp, 서블릿 처리, http 요청 수신 및 응답 기능을 하며 동적인 데이터 처리를 가능하게 해준다.
이클립스는 대표적인 자바 통합 개발도구 이며 IBM에서 1999년 개발해 오픈소스로 기증한 소프트웨어다. 이클립스는 자바 이외의 개발 도구로 사용할 수 있으며 플러그인 구조로 인해 이클립스 기반의 여러 개발도구를 만들 수 있는 형태다. 안드로이드 스튜디오가 나오기 전까지는 안드로이드의 공식 개발도구였다.