티스토리 뷰

1. Java 언어의 기원

- Sun Microsystems의 제임스 고슬링(James Gosling)

- 1990년 그린 프로젝트와 Oak 언어

- 1995년 Java와 HotJava 발표

 - 웹의 확산과 함께 주목을 받음

- 1996년 1월 JDK 1.0 발표

 - 1998년 Java2 SDK, SE 1.2(J2SE 1.2 또는 Java2)

 - 2014년 Java Platform(JDK) SE 8

- 2009년 Oracle이 Sun을 인수함


 제임스 고슬링 : 캐나다의 컴퓨터 과학자. 자바 언어의 창시자.

  그린 프로젝트 : 제임스 고슬링이 주도한 팀에서 그린 프로젝트를 수행했다. 소형 전자제품의 셋톱박스에 들어갈 프로그래밍을 개발하는 것이 목적이었고 그것을 위해서 C++ 언어를 사용할 수 있는 것인가를 검토했다. 적당치 않은 것이 판단이 되어 Oak 언어가 맞아서 사용하였다.

  Oak 언어 : 다양한 전자제품에서도 수정없이 동작될 수 있는 프로그램의 언어를 개발하는 것이 목적이었다. 그린 프로젝트를 수행할려고했는데 결과적으로는 성공하지못했다.

    1990년대 초반에 World Wide Web(WWW, WEB)의 태동기와 일치한다. 다양한 컴퓨터에서 수정없이 사용할 수 있는 개념이 웹과 맞아 떨어졌다. 그래서 웹의 확산과 함께 이들이 생각하는 것이 주목을 받았고 Oak 언어가 Java 언어로 개명이 된다. 자바라는 언어로 공식적으로 발표를 하고 HotJava(자바 언어로 개발한 첫번째 브라우저)를 만들었다.

    공식 버전으로 1996년 1월에 JDK(Java Development Kit) 1.0을 발표한다. 계속해서 버전 업을 하게된다. 98년에 Java2 SDK, SE(Standard Edition) 1.2, JDK가 1.0에서 1.2로 개선됫는데, 1.2부터 버전을 매길때 1.2, 1.3으로 이야기안하고 Java2로 명칭하게된다. 발전을 거듭하다가 2014년에 Java Platform(JDK) SE 버전 8, 최신 버전이다. 8은 Major Version 번호이고, 그 뒤에 업데이트 번호가 다른 것들은 소수점이 붙기도하지만 자바에서는 업데이트 번호가 붙는다.

  자바의 홈페이지는 Sun에서 개발이 되었기때문에 과거는 공식홈페이지가 java.sun.com 이었는데 Sun이라는 회사가 Oracle로 인수 합병이 된다. 2009년 이후에는 Sun이 아닌 Oracle 회사에서 관리하고 있다.


자바의 로고를 보면 커피가 나오고 커피향이 나오는데, 왜 자바라고 언어의 이름을 붙였냐고 했을 때, 제임스 고슬링이 주도가 된 팀원들이 자바라는 것이 인도네시아의 섬 이름이기도 하고 인도네시아산 커피 이름이기도 한데 그들이 자바 커피를 좋아해서 붙였다는 설도 있고, 제임스 고슬링(James Gosling)의 J, 그 팀에 있었던 아더 반 호프(Arthur Van Hoff) AV, 앤디 베춀쉐임(Andy Bechtolsheim)의 A, 이들의 첫자를 따서 자바라고 지었다는 이야기도 있다.


2. Java 언어의 특징

- C/C++언어와 유사하나 단순함

- 플랫폼에 독립적

- 완전한 객체지향 언어

- 웹 또는 네트워크 프로그래밍이 용이

- 엄격한 자료형의 검사

- 예외 처리 기능 제공

- 멀티 스레딩 지원


  기본적인 문법은 매우 흡사하다. 하지만 C나 C++에 있는 포인터, 전처리기, 할당된 메모리의 제거 작업은 자바에서는 불필요하다. 그래서 문법적으로 C나 C++과 유사하지만 단순해졌다.

  소형 전자제품에서 수정없이 호환될 수 있는 프로그램 언어를 개발해보자하고 나오는 것이 자바 언어이다. 어떠한 하드웨어던지 자바 플랫폼만 설치되어있으면 자바 언어는 자바 플랫폼상에서 실행되기때문에 한 번 작성된 자바 프로그램은 수정없이 자바 플랫폼이 탑재된 어떤 하드웨어에서도 실행될 수 있다. 그래서 플립폼이 독립적이라고 할 수 있다. 다른 말로는 아키텍쳐의 독립적이다라고도 한다.

  C++은 하이브리드 언어라고 하는데, 객체지향적인 모습도 있고 아닌 모습도 있다. 자바 언어는 완전한 객체지향 언어이다. 자바 언어를 사용해서 효과적으로 프로그램을 작성할려면 객체지향과 관련된 여러가지를 이해하고 있어야한다.

  웹 응용프로그램이나 네트워크를 활용한 프로그램을 작성할 때 자바가 풍부한 라이브러리를 제공한다.

  자료형, 데이터 타입에 대해서 엄격히 컴파일러가 검사를 해서 자료형이 불일치로 인해서 생길 수 있는 오류 발생 여부를 줄여준다. 그래서 신뢰성이 높은 소프트웨어를 만들 수 있다. 그런 작업을 컴파일러를 통해서 컴파일을 수행한다.

  프로그램이 중간에 오류가 발생해서 프로그램은 중간에 비정상적으로 종료되는데, 예외 처리 기능을 제공하면 오류 발생을 어느정도 처리해서 정상상태로 복구시켜서 계속해서 프로그램 수행을 계속 할 수 있게끔 처리한다.

  스레드라는 것은 프로세스 안에 존재하는 독립적인 실행 흐름이다. C 프로그래밍, C++ 프로그래밍에서는 메인 함수가 시작되고 그것이 끝나면 종료되고 결국 실행되는 것이 하나밖에 없었는데 자바 언어에서는 여러가지 스레드를 만들어서 독립적인 실행 흐름을 만들어서 프로그램을 실행시킬 수 있다. 동시에 여러 작업들을 실행시킬 수 있다.


3. Java 프로그램의 실행

- Java 소스 프로그램의 확장자는 .java􀀁

- 바이트 코드

 -  Java 소스를 컴파일한 결과물

 - 확장자는 .class이며 클래스 파일이라고도 함

 - Java VM에서 실행 가능한 코드

  - “write once, run anywhere.“












공지사항
최근에 올라온 글
Total
Today
Yesterday