Backend CS - #2 Java란?

박주현·2023년 2월 16일
0
post-thumbnail

Java

  • 1991년 썬 마이크로시스템즈사에서 제임스 고슬링이 고안.
  • 초창기에는 오크(Oak) 또는 그린(Green)이라고 불렸으며
    오크는 최초 가전제품으로 사용되는 프로그램의 개발이 목적이었지만, 웹과 인터넷의 등장으로 개발 목적이 인터넷으로 변경되면서
    1995년 자바로 이름을 변경.
  • 고슬링의 목표는 "Write Once, Run Anywhere" 로 한번 쓰고 어느 곳에서도 실행하는 것을 목표로 둠.
  • 2009년 오라클과 썬 마이크로시스템즈 합병 후 자바에 대한 모든 권리는 오라클로 넘어감.

특징

  1. 객체지향 언어
    • 객체지향 프로그래밍(Object Oriented Programming)은 프로그램을 개발하는 기법으로
      객체를 먼저 만들고 다른 부분들을 하나씩 조립하거나 연결하여 프로그램을 완성.
    • 클래스를 작성 한 뒤 객체와 객체를 연결하여 프로그램을 제작
    • 캡슐화, 상속성, 다형성 지원
  2. 이식성이 높다
    • 서로 다른 실행환경을 가진 시스템간에서 프로그램끼리 옮겨 실행 가능.
    • JRE이 설치 되어 있는 모든 운영체제에서는 실행 가능
  3. 인터프리터 언어
    • 인터프리터란?
      : 소스코드를 한줄 한줄 읽어가면서 명령을 처리하는 프로그램으로 번역과 실행이 동시에 이루어진다.
    • 시스템에 관련이 없는 2진 파일을 만들기 때문에 컴파일 언어에 가까운 속도와 독립성을 준다.
  4. 메모리를 자동으로 관리
    • 개발자가 직접 메모리에 접근하지 못하면, 자바가 직접 관리
    • 객체 생성 시 자동으로 메모리 영역을 찾아 할당하고, garbage collector 를 실행시켜 사용하지 않는 객체를 삭제
  5. 풍부한 오픈소스
    • 오픈 소스 언어이기에 자바에서 사용하는 라이브러리에 대한 오픈 소스의 양도 방대함.

단점

  1. 느린 실행 속도

    • 자바 가상 머신을 거치는 과정이 있기에 실행 속도가 느림.
  2. 예외처리

    • 개발자가 직접 일일이 예외처리를 해야함
  3. 코드 길이

    • 작성해야하는 코드가 길다.
profile
빌드업 막 시작하는 개발자

0개의 댓글