Uncategorized

3 3 0 함수 클래스 모듈 객체 인스턴스 컴포넌트 API

Written by

🚀 **이 문서는 보다 쉽게 이해할 수 있도록 정리되었습니다.**

영상으로 보시면 더 편하게 이해하실 수 있습니다~

프로그램을 만든다 라는 것은 특정 기능을 개발한다입니다.

특정 기능이라고 하면 가장 작은 단위는 함수입니다.

함수는 f(x) = ax + b 와 같은 기존에 아시는 함수와도 비유할 수 있고,
a, b를 넣으면 더해주는 sum(a, b)라고 생각할 수도 있습니다.
특정 기능을 해주는 단위가 함수입니다.

함수 – 가장 기본적인 기능 단위

이 함수들이 엮어서 기능들을 만들게 되는데요. 의미있는 묶음으로 묶어서 사용하는데,
이를 모듈이라고 합니다.

모듈 – import 하는 선언을 통해서 기능들을 추가할 수 있는데, 이러한 기능들(함수)의 집합이 모듈임.

모듈 – 기능(함수)들의 집합

모듈들의 모음은 패키지입니다.

패키지 – 모듈들의 모음

여기서 단독으로 함수를 여러 개 사용할 수도 있지만,
클래스라는 형태로도 사용할 수 있는데요.

클래스 – 변수와 함수들을 포함하는 특정 기능들의 집합

클래스는 변수와 함수들로 구성된 모습입니다.
예를 들어
사람이라는 클래스가 있다고 하면
사람에 속성으로 나이, 키, 몸무게를 정의할 수 있고,
먹는다. 입는다. 잔다. 등으로 함수로 정의 할 수 있습니다.

이 정의된 것을 클래스라고 하면
이를 선언한 것은 객체입니다.
사람 a; 로 선언하면 a라는 객체는 사람을 선언한 것입니다.
사람 b; 로도 추가로 정의할 수 있습니다.

객체 – 클래스를 정의된 것을 선언해줌으로 만들어지는 것을 객체

여기까지 정의를 한 것이라면
이것이 프로그램으로 운영체제에서 실행하게 되면 이를 인스턴스화 되었다라고 할 수 있습니다.

인스턴스 – 객체가 메모리에 떠 있는 것을 의미

컴포넌트 – 특정 기능들의 모음이자 재사용가능한 단위 독립적으로 실행 될 수 있는 것
프로그램과 달리 개발에 사용할 수 있게끔 명세화 되고, 사용할 수 있어야 함.
그래서 CBD(Component Based Development)라는 것은 이렇게 독립적으로 기능들을 만들고,
다른 개발 파트에서 활용할 수 있게 하자라는 개념이고, 외부 인터페이스가 있어야 합니다.

이는 안드로이드 개발 시에도 액티비티 같은 것을 만들고 나면 재사용할 수 있는데
이 레벨이 컴포넌트입니다.

외부 인터페이스가 API입니다. 진입점과도 같이 기능을 동작시키기 위해서 호출해주는
인터페이스이고, 이 호출이 되면서 전체 기능이 기대하는대로 동작이 가능합니다.

API – 어플리케이션 프로그램의 인터페이스

이런 API는 내부 개발자들간에 또는 컴포넌트의 명세를 아는 개발자가 사용하는 것이라면

외부 개발자도 사용할 수 있게 밖으로 기능을 빼 준 것이OpenAPI 입니다.

OpenAPI – 외부 개발자도 기능을 사용할 수 있게 명세와 함께 오픈해둔 API
OpenAPI는 주소, API의 호출 URI, 그리고 파라미터들, 그리고 응답값에 대한 정의들로 오픈이 되어 있습니다.

함수부터 OpenAPI까지 설명을 드려봤습니다.

개발자, 기술사, 삼성, 외국계 IT기업 20년차 기술노트 알렉이 직접 작성한

IT기업 기술 면접을 위한 CS + 면접 노하우 PDF
[https://kmong.com/self-marketing/539751/LUA54VnQsP](https://kmong.com/self-marketing/539751/LUA54VnQsP)
자주 나오는 CS 질문과 답변 그리고 100번 이상 면접관으로 참여하면서 느꼈던

면접자가 알아야 할 팁 13가지 포함

백엔드 개발자를 위한 클라우드

Leave a Comment