
API vs UI

우리는 컴퓨터를 사용하기 위해서 직접 다루기 어렵기 때문에 운영체제(OS)를 깐다. 그리고 JAVA라는 프로그램을 다운로드했다. 이 JAVA라는 프로그램을 통해 나의 프로그램을 만들 수 있게 되었다.
우리가 무턱대고 만들 수 있는게 아니라 쉽게 만들 수 있도록 여러 가지 부품들을 제공한다. 화면에 무언가를 실행시키고 싶을 때는 Syetem.out.Print를 썼고 수학적인 것을 사용하고 싶을 땐 Math 클래스를 사용한다.
이렇게 JAVA가 내장하고 있는 기능들을 라이브러리라고 부르고 우리는 이 기본 라이브러리를 통해서 나의 프로그램을 만드는 것이다.
나의 프로그램을 만들 때에는 JAVA가 제공하는 기본적인 문법을 통해서, 시간의 순서에 따라서, JAVA가 제공하는 기본 라이브러리를 실행되도록 하는 것을 통해서 프로그램을 만든다. (Date > PrintWriter > System)
자 이 맥락에서 JAVA가 제공하는 기본적인 부품들의 조작 방법을 API (Application Programming Interface) 라고 한다. 여기서 Programming이라는 것은 시간의 순서에 따라 실행된다는 것에서 시간이 강조된 것이고 Application 은 JAVA가 제공하는 부품들을 응용해서 만든다는 응용에 강점이 찍혀있는 표현이다. 즉 우리가 JAVA를 응용해서 프로그래밍적으로 실행되는 프로그램을 만들기 위해서 사용해야 되는 조작 장치들, 조작 방법을 API라고 부른다.
그래서 우리가 프로그램을 잘 만들기 위해서는 어떤 API가 있고 그 API는 어떻게 조작하는가를 풍부하게 알고 있고 사용할 수 있게 되는 것이 좋은 프로그래머가 되는 초석이라고 할 수 있겠다.
이렇게 해서 만든 프로그램을 사람에게 사용된다면, 그것을 뭐라고 하냐면 사람이 우리가 만든 프로그램을 조작하기 위해서 조작해야 하는 조작 장치들이 있을 것이다. (웹이면 링크, 데스크탑 애플리케이션이면 버튼, 커맨드 라인 시스템이면 아규먼트 등) 이러한 것들, 사용자가 우리가 만든 프로그램을 조작하기 위해서 사용하는 조작 장치라는 뜻에 UI (User Interface) 라고 부른다.

동시에 우리가 만든 프로그램을 사람이 사용하지 않을 수도 있다.
이런 경우에는 우리의 프로그램이 우리의 프로그램을 사용하는 완제품에 해당되는 프로그램에게 API를 제공해야 한다. 그리고 그것을 만드는 프로그램이 다시 다른 프로그램에 사용된다면 그 프로그램도 API를 제공해야 된다.
다음 시간에는 JAVA가 제공하는 기본 라이브러리를 사용하는 방법, 즉 API의 사용방법을 스스로 알아내는 방법을 알아보자.
JAVA 문서 보는 법
추천 검색어 API documentation JAVA (Version)

들어가서보면 All Classes 에서 자신이 만들고 싶은 프로그램에 대한 Class를 찾아볼 수 있다. 만약 수학적인 클래스를 찾는다면 Math 를 검색하여 보자.

Class Math에 들어와서 java.lang 이라는 부분에 집중해보자. 이것은 무엇이냐면 Math라는 Class가 소속되어 있는 Package 라고 하는 것이다. (각 Class가 정리정돈되어 있는 상위 집단이라고 보자.)
왼쪽 상단에 보면 Packages를 통해서 JAVA가 기본적으로 제공하는 여러 가지 Package들을 찾아볼 수 있다.

java.lang을 검색해서 클릭해보면 Package에 속해 있는 Class들을 확인할 수 있는데 java.lang에 속해 있는 Class들 중에서 Math가 속해 있는 것을 볼 수 있다.
그렇다면 Class란 무엇인가?
일단 서로 연관된 변수와 메소드라는 것을 모아서 거기에 이름을 붙인 것이라고 볼 수 있다.
Math 페이지에서 아래를 보면

E 와 PI 라는 변수와 abs, acos, min, max 등의 이런 여러 가지 메소드들 그룹핑한 것을 Class라고 생각하면 되겠다.
정리를 해보자면,

Class들을 그룹핑해서 이름을 붙인 것을 Package, Class 하나 하나는 변수(variable)와 메소드(method)들을 그룹핑한 것이다.
Class

JAVA는 수학과 관련된 프로그램을 만들 때 사용하는 Math Class를 내장하고 있다.
이 Math 라는 Class에서 점(. )을 찍으면 Math Class 안에 소속되어 있는 변수나 메소드라고 하는 것에 대한 리스트를 보여준다. 예를 들어 파이에 대한 구체적인 값을 알고 싶다면 PI 를 선택 (파이의 구체적인 값이 적당한 정밀도로 저장되어 있는 변수, PI) 여기서 PI는 Math 라는 Class에 소속되어 있는 것이다.
'youtube.com|user|egoing2 > JAVA1' 카테고리의 다른 글
JAVA1 - 13.3 상속 Inheritance (6) | 2022.01.20 |
---|---|
JAVA1 - 13.2 인스턴스 Instance (0) | 2022.01.20 |
JAVA1 - 10. 디버거 (0) | 2021.12.16 |
JAVA1 - 9. 프로그래밍 예제 IoT (3) | 2021.12.16 |
JAVA1 - 8. (0) | 2021.12.16 |