GUI 는 Graphic User Interface의 줄임말로,
말 그대로 User입장에서 간편한 인터페이스를 말합니다.
예를 들어, 우리가 쓰는 윈도우는 GUI입니다.
눈에 보이는 그래픽덕분에 마우스를 이용해서 직접 파일을 옮기고 만들고 하며 간편하게 조작할 수 있죠.
하지만 윈도우도 맨 처음에는 Dos형식의 CUI 였는데,
CUI는 GUI와 반대되는 용어로 Character User Interface의 줄임말입니다.
윈도우의 명령프롬프트(cmd)를 한번이라도 보셨다면 이해할 수 있는데, 문자로만 모든 명령을 이행합니다.
API는 Application Programming Interface입니다. 손가락으로 치기 귀찮을만큼 길죠.
뜻은 '응용프로그램 프로그래밍 인터페이스' 로 해석해볼 수 있습니다.
즉 운영체제가 제공하는 기능들을 응용프로그램따위에서 사용할 수 있도록 만든 것을 말합니다.
더 쉽게 말해 해당 프로그램단의 기능들을 다른 응용 프로그램 등이 조작할 수 있도록 해주는 것이죠.
예를들어, 카카오톡 연동 게임이 존재하죠.
카카오톡은 SNS 메신져일 뿐인데 어떻게 게임과 연동할까요?
카카오톡 자체에서 자기들의 프로그램과 연동할 수 있는 API란 것을 배포하기 때문입니다.
카카오톡 자체에서 자기들의 프로그램과 연동할 수 있는 API란 것을 배포하기 때문입니다.
객체지향언어 (OOP) 는 Object Oriented Programming의 줄임말이고
절차지향언어 (procedure proframming)
프로그램을 설계하는 방식중 하나입니다.
쉽게 말해 부품들이 모여 기계가 되듯이,
자동차 부품들이 조립되어 자동차가 탄생하는 방법과 유사하게 코드를 작성하는 방법론이라고 생각하면 쉽습니다.
OOP를 설명할 때 예로 드는 언어가 대표적으로 JAVA가 있습니다.
물론 객체지향의 완성이라 할 정도의 완성도지만 JAVA로 객체지향을 배운다면 더 어려울 수 있습니다.
절차지향언어는 객체지향언어와 반대로 생각하면 안됩니다.
약간 다른 개념일 뿐이지 막상 비교하려 들면 이해하기가 더 어렵기 때문입니다.
그래서 말 그대로 절차를 계획하고 코딩하는 방식으로 이해하면 되겠습니다.
객체지향언어와 비교하자면
OOP는 부품을 먼저 설계하는 순서가 많으며, 부품의 재활용이 빈번하게 작용합니다.
모두 자주 쓰이는 용어이기때문에 외워두시길 바랍니다.