본문 바로가기

IT/ETC

[ETC] API란? API 설명


API 프로그래밍의 역할
API란 윈도우 운영체제를 예를 들면, 윈도우 운영체제를 실행하고 제어하는 역할과 윈도우 자체를 만들고 운영할 수 있게 해주는 프로그래밍을 말한다.
또한 프로그램과 프로그램을 연결시켜주는 역할을 하는 통로역할도 담당한다.

예를 들면 인터넷을 하려면 IE를 실행한다. 가정했을 때 네트워크가 연결되어야 한다. 네트워크와 IE를 연결시켜주어 인터넷 화면을 보이게하는 역할을 하는 것이다.
그리고, 우리가 일상적으로 윈도우에서 실행을 하지만 열기나 닫기 같은 간단하고 단순한 기능 또한 API인 것이다.

API란? API 설명과 의미

API는 운영체계나 다른 응용프로그램에게 처리요구를 할 수 있도록 컴퓨터 운영체계나 다른 응용프로그램에 의해 미리 정해진 특별한 메쏘드이다. API는 운영체계나 프로그램의 인터페이스로서 사용자와 직접적으로 대하게 되는 그래픽 사용자 인터페이스나 명령형 인터페이스와는 뚜렷한 차이가 있다.

API는 응용프로그램이 운영체계나 데이터베이스 관리시스템과 같은 시스템 프로그램과 통신할 때 사용되는 언어나 메시지 형식을 말한다. API는 프로그램 내에서 실행을 위해 특정 서브루틴에 연결을 제공하는 함수를 호출함으로써 구현된다. 그러므로 하나의 API는 함수 호출에 의해 요청되는 작업을 수행하기 위해 이미 존재하거나 또는 연결되어야 하는 몇 개의 프로그램 모듈이나 루틴을 가진다.








API(application Programming Interface)를 말 그대로 해석을 해보면 " 실행화일 프로그래밍들이 조화롭게 작동할 수 있게 "라는 뜻인데, 내가 어떠한 장사를 하려할 때, 공간이 필요하고 그 공간에 필요한 물품들이 있으며, 그 물품들을 판매할 여러가지 아이템과 집기등이 원할하게 제공되고, 그 제공된 것들로 부터 원하는 판매를 할 수 있게끔 하는 역할.

운영체제가 응용 프로그램을 위해 제공하는 함수의 집합. 넓은 의미로는 어플리케이션 개발에 필요한 인터페이스를 모두 통틀어 말한다고 볼 수 있다.

이해를 쉽게하기 위해서 백화점으로 예를 들어보면 다음과 같다.

소비자를 끌어오기위한 반듯한 건물이 있어야 하며, 층을 오갈 수 있는 에스컬레이터와 엘리베이터, 식당과 여러가지 서비스를 위한 공간들과 진열대 등. 거기에 내가 판매하고자하는 모든 상품등이 프로그램들과 소프트웨어라고 보면 된다.

API는 작은 의미로는 대표적인 윈도우의 API로 이해되지만, 큰 의미로는 윈도우뿐만 아니라 리눅스나 유닉스 같은 운영체제 그리고, 프로그래밍 자체내에서도 구성되는 자바API, 닷넷API등등 그 종류는 매우 많다.

애플의 운영체제에서 윈도우의 운영체제 및 소프트웨어들이 돌아가지 않는 이유는 애플의 API가 윈도우의 API를 지원하지 않기 때문이다. API는 프로그래밍이며, JAVA나, C, C++, C#등으로 구성된 소프트웨어 프로그래밍을 연결시켜 해당 OS에서 본 기능들을 연결 및 활성화 시키는 역할을 한다.

API장점

API를 배워놓으면, 운영체제에 대해서 깊은 이해가 될 것이며, 자율성이 뛰어나기 때문에 GUI(Graphic User Interface)도 만들 수 있으며 운영체계를 포함한 여러가지 환경조작이 용이하다. Win32 API같은 윈도우용 응용프로그램을 만들 때 사용하는 도구도 있으며, 프로그래머라면 꼭 API를 배워놓는 것이 전반적인 실력 향상에 도움이 될 것이다.

솔데스크에서는 자바나 닷넷, 그리고 C, Windows server2008과 리눅스와 솔라리스(유닉스)등에서 API를 기본적으로 다룬다.
모른다고 해가되는 것은 없으나, 알아두면 유리하고 편리해 진다는 것은 분명하다고 볼 수 있다.



추가 설명(java에서의 api)

java에서 api는 c++의 mfc의 도움말과 유사하다고 생각하면 된다.
jsp에서 api를 정리해서 보고하라고 한다면 프로그래머가 만들어 놓은 .class프로그램들의 네임스페이스별로 클래스의 쓰임새와 내부 메소드의 역할을 정리하라는 것이다.
데이타를 담당하는 beans와 연산을 담당하는 servlet프로그램이 있으면 servlet 프로그램에서 프로그래머가 구현해놓은 클래스와 인터페이스 별로 메소드와 멤버변수들을 정리하고 beans쪽에서도 마찬가지로 getter/setter들을 정리하면 된다. 거기에 클래스들의 연관관계와 종속도를 클래스다이아그램같은 것으로 정리하면 해당 프로젝트를 한눈에 파악할 수 있는 API가 될 수 있다.
이렇게 정리된 문서를 JavaDoc문서라고 한다.

톰캣을 설치 했을 시 톰켓 홈\webapps\tomcat-docs\ 에 가면 servlet api,  jsp api 에 해당하는 것들을 전부 볼 수 있다.