API(Application Programming Interface)

  • 서비스 중에 있는 프로그램의 환경을 사용자의 환경에 이식받아 서로 소통이 가능하게 하는 도구의 집합체.
  • (상대방의 환경을 나의 환경에 다운로드 받아서 활용할 수 있음)
  • 자신들의 기능을 도구화 시켜놓음
  • 서버와 클라이언트를 이어 사용자가 사용할 수 있게 해주는 도구.
  • 정의 및 프로토콜 집합을 사용하여 두 소프트웨어 구성 요소가 서로
    통신할 수 있게 하는 메커니즘

입출력 장치(I/O 장치)

  • 간단하게는 마우스, 키보드, 모니터, 마이크 등등이 있다.
  • 사용자가 컴퓨터에 입력을 할 수 있게 해주고(키보드, 마우스), 컴퓨터는 사용자가 원하는 답변을 출력해주는 도구
    (모니터, 스피커, 프린터)

프로그래밍에서의 함수란?

  • 프로그램 소스 코드에서 일정한 동작을 수행하는 코드(들)
    - 매개변수가 있어 그에 맞는 값을 할당해주어야 작동함.
  • 기능 덩어리
  • 공구통 안의 공구들. 없어도 할 수 있지만 있으면 매우 간편하고 편리하게 해주는 도구.
  • 함수를 이용해서 식을 간결하게 만들고(중복되는 부분을 함수로 정의하고) 인자값을 받아서 활용할 수 있다.
  • 이를 통해 아래의 효과를 얻을 수 있다.
    - 코드 파편화(커다란 코드를 나눠서 사용하기 위해 잘라낼 수 있음)
    - 코드 집중화(반복되는 코드를 지워 중요한 코드를 부각시킬 수 있음)
    - 코드 은닉화(어렵게 정의한 내용을 볼 필요 없게 감추고, 내부적으로 바꿔도 결과만 잘 나올 수 있게 해줄 수 있다.)

WORA(Write Once Run Anywhere)

  • ‘한 번 작성된 코드는 모든 플랫폼에서 실행된다’는 의미
  • C언어 등 기존 언어가 가진 플랫폼 종속성을 극복
  • (C언어에서는 컴파일러를 기종별로 따로 구비해야하나,
    자바는 기종에 맞는 JRE를 셋팅해주면 됨)
  • 이식성이 좋다(호환성이 좋다)

WORA를 가능하게 하는 자바의 특징

  • 바이트코드 : 가상 컴퓨터가 이해할 수 있는 중간코드로 컴파일한 코드(환경에 맞춰서 중간코드로 컴파일해서 어디든 호환)
  • JVM(Java Virtual Machine, 자바 가상 기계)
    - 동일한 자바 실행환경을 제공해주기 위해 각기 다른 플랫폼에 설치하는 소프트웨어
    - JVM 자체는 플랫폼에 종속적이지만 자바는 독립적
    - 오라클과 IBM 등에서 개발, 공급됨
    - 자바 응용프로그램을 실행시키려면 JVM이 응용프로그램을
      구성하는 클래스 파일(.class)의 바이트 코드를 실행

 

 

 

+ Recent posts