본문 바로가기
개발 용어/입문

[개발용어] 개발 기초 용어 두번째,,

by 정긔린 2020. 11. 24.
반응형

안녕하세요 기린입니다 :]

2020/11/24 - [개발 용어/입문] - [개발용어] 개발 기초 용어 첫번째,,

지난번 개발 기초 용어 첫번째에 이어 두번째 기초 용어를 정리해보겠습니다!

일단 개발을 시작하게될 때 가장먼저 접할 수 있는 용어들을 살펴볼게요 :)

가장 많이 접하실 수 있는 개념들부터 보시죠 


서버(Server)와 클라이언트(Client)

먼저 둘을 나누는 기준을 알아야 이해하기 쉬워요:) 그 기준은 바로!! 서비스를 제공하느냐(서버)/ 제공받느냐(클라이언트)에 따라 구분하게 됩니다. 예를들어, 어떠한 서비스를 제공해주는 컴퓨터나 프로그램 영역을 서버라고 한다면 여기에 접속하여 서비스를 제공받는 유저 영역이 클라이언트가 되겠습니다!

 

프로토콜(Protocol)

컴퓨터나 서버, 통신 장비 등 장치 사이에서 서로 통신하기 위해 미리 정해놓은 규칙. (TCP/IP, HTTPS, HTTP 등이 모두 인터넷 프로토콜이에요)

 

프레임워크(Framework)

프로그램을 개발하기 위한 구조를 제공하는 개발 환경. 코딩을 할 때 자주 쓰이는 여러 클래스(Class, 변수와 함수의 묶음)를 프레임워크가 정해둔 흐름에 맞춰 쓸 수 있도록 지원해 주기 때문에 복잡하거나 반복되는 작업에 대한 부담을 덜어줄 뿐만 아니라 개발에 들이는 시간 대비 프로그램의 질을 높일 수 있다.

 

라이브러리(Library)

프로그램을 개발하는 데 필요한 여러 기능을 활용할 수 있도록 묶어놓은 함수 또는 기능의 집합. 프레임워크가 개발을 제어하는 틀거리를 제공해준다면, 라이브러리는 도서관에서 책을 빌리듯 개발자가 필요한 기능을 마음대로 가져다 쓸 수 있는 일종의 모음집에 가깝다. 즉 정해진 방식으로 개발을 하게끔 정해주는 프레임워크와 달리 제어권이 개발자에게 주어지는 셈이죠.

 

플러그인(Plug-in)

어떤 특정한 기능을 해결하는 데 쓸 수 있도록 미리 만들어 놓은 코드 및 데이터의 모음. 한 라이브러리나 프레임워크에서 여러 개의 플러그인을 제공한다고 볼 수 있어요.

 

API(Application Programming Interface)

응용 프로그램 인터페이스. 어떤 응용 프로그램에서 특정한 기능을 사용하기 위해 필요한 데이터를 주고받게끔 만든 도구나 방법을 뜻한다. API가 규격에 맞게 데이터를 요청하고 받아볼 수 있도록 하는 중간 창구 역할을 하는 셈이다. (포털사이트가 기상 관측 기업의 날씨 정보를 받아서 내보내거나, 코로나 확진자 분포를 지도에 띄우거나, 여러 웹사이트에서 페이스북이나 카카오톡 계정을 통한 간편 로그인을 제공하는 것 역시 API를 통해 이루어진다.)

 

SDK(Software Development Kit)

소프트웨어나 시스템을 만드는 데 쓰이는 개발 도구 키트. SDK 안에는 개발에 필요한 샘플 코드, 코드 편집기 같은 툴이나 콘솔, 안내 문서, API 등이 포함된다. (안드로이드용 모바일 앱을 개발하는 데는 Android SDK가, 자바(Java) 개발을 하는 데는 자바 개발 키트(JDK)가 쓰이는 등 여러 가지 SDK를 찾아볼 수 있다.)

 

오픈 소스(Open Source)

누구나 제한 없이 쓸 수 있는 소스 코드 혹은 소프트웨어. 오픈 소스로 배포된 코드는 열람, 수정, 복제, 재배포 등이 자유롭습니다. 한국에서는 공공데이터포털(data.go.kr)을 통해 공개된 오픈 API를 내려받을 수 있습니다.

▲공공데이터 포털에서는 공공 API를 누구나 무료로 내려받고, 자유롭게 이용할 수 있어요.

 

버그(Bug)

소프트웨어에서 발생하는 예견치 못한 오류나 오작동. 있어도 이상하고 없어도 이상한 것. (새롭게 배포한 기능에서 버그가 발견되지 않으면 오히려 초조해하는 개발자들의 모습을 볼 수 있다고 하네요,,)  유저가 입력한 내용이 잘못됐을 때 발생하는 문제. 잘못 짠 코드처럼 문제로 예상하지 못한 문제가 일어나는 버그와 달리, 외부에 있는 유저가 오탈자를 내거나 띄어쓰기를 실수하는 등 내부에서 정한 형식을 따르지 않을 때 주로 발생한다.

 

예외(Exception)

에러가 일어날 가능성을 개발자가 미리 예상하고 프로그램이 비정상적으로 종료되지 않도록 하는 것. 예외 처리(Exception Handling) 또는 트러블 슈팅(Trouble Shooting)을 통해 예외를 구분하고, 유저에게 문제를 바로잡아달라는 에러 메세지를 띄워줘야 에러로 인한 문제를 예방할 수 있답니다.


 

자! 

여기까지 두번째 기초용어 정리한 내용이였어요 :)

제가 설명한 부분이 부족했더라면 인터넷에 구글링을 해보셔요 아주 잘 나와있고 저처럼 이렇게 글로 작성하여 공부하셔도 좋은 방법일 것 같습니다! 아직 기초용어 정리는 끝나지 않았어요! 다음 글에서 만나요!!

해당 글은 주간 인프런을 게시글을 참고하여 작성하였습니다

https://www.inflearn.com/pages/weekly-inflearn-12

반응형