'관심1/JAVA'에 해당되는 글 12건

  1. 2016.11.18 자바란 무엇인가??
2016. 11. 18. 22:52

자바에 대해서 알아보도록 하겠습니다.

 

1. java란?

  - 자바 는 썬 마이크로시스템즈의 제임스 고슬링(James Gosling)과 다른 연구원들이 개발한 객체 지향적 프로그래밍 언어이며, 썬 마이크로시스템즈에서 무료로 제공하고 있다.

1991년 그린 프로젝트(Green Project)라는 이름으로 시작해 1995년에 발표했다.

처음에는 가전제품 내에 탑재해 동작하는 프로그램을 위해 개발했지만 현재 웹 애플리케이션 개발에 가장 많이 사용하는언어 가운데 하나이고, 모바일 기기용 소프트웨어 개발에도 널리 사용하고 있다.
현재 버전 9까지 출시했다. 자바의 개발자들은 유닉스 기반의 배경을 가지고 있었기 때문에 문법적인 특성은 파스칼이 아닌 C++의 조상인 C 언어와 비슷하다.
자바를 다른 컴파일언어와 구분짓는 가장 큰 특징은 컴파일된 코드가 플랫폼 독립적이라는 점이다.
자바 컴파일러는 자바 언어로 작성된 프로그램을 바이트코드라는 특수한 바이너리 형태로 변환한다.
바이트코드를 실행하기 위해서는 JVM(자바 가상 머신, Java Virtual Machine)이라는 특수한 가상 머신이 필요한데,
이 가상 머신은 자바 바이트코드를 어느 플랫폼에서나 동일한 형태로 실행시킨다.
때문에 자바로 개발된 프로그램은 CPU나 운영 체제의 종류에 관계없이 JVM을 설치할 수 있는 시스템에서는 어디서나
 실행할 수 있으며, 이 점이 웹 애플리케이션의 특성과 맞아떨어져 폭발적인 인기를 끌게 되었다.

(위키 백과 내용임)

 

2. java 특징

-Java의 가장 큰 특징은 플랫폼에 독립적인 언어라는 점.
 소스코드를 머신코드로 컴파일하여 링크하는 C/C++과 달리 바이트코드인 클래스 파일(.class)을 생성하고, 이 파일을 일종의 에뮬레이터인 Java 가상 머신(=JVM)[5]이 해석해서 실행한다.
이 특성으로 인해 Java는 태생적인 강한 장점과 심각한 약점을 모두 가지게 되었다.
참고로 JVM 기반의 프로젝트에서는 하나의 언어만을 고집하지 않는다.
스크립트 언어가 유리(간결하고 짧은 소스코드)한 부분은 Groovy로 작업하고, 함수형 언어가 유리(최근 유행하는 빅데이터 등)한 부분은 Scala로 작업하며, 견고한 인터페이스와 대규모 통합이 필요한 곳은 Java로 작업한 뒤 이들을 서로 합쳐서 운영하는게 가능하다.
(Java에서 만든 객체를 Scala에서 그대로 사용하는게 가능하다)
실제 현업에서는 Java와 통합해서 몇몇 인기 언어가 자주 사용되므로 장단점을 잘 알아두는게 좋다.

(나무 위키 내용임)

 

3. java 장점

  - 수많은 개발자와 레퍼런스
  - 비교적 높은 생산성
  - 기기 호환성
  - 안정성
  - 소스코드 가독성

 

4. java 단점

  - 속도 문제
  - JVM 로딩 속도문제
  - 가상 머신으로 바이트코드를 실행하는데서 비롯되는 실행속도문제
  - 가비지 컬렉션에 의한 실행 지연문제
  - 불편한 예외 처리
  - 소스 코드 길이

Posted by dlfma1985