본문 바로가기
Identity_Tech Interview

개발 기본 용어(디버깅, 인터프리터, 배포, 컴파일러, 빌드, 환경변수, 라이브러리, 프레임워크)

by 스타트업_디벨로퍼 2020. 12. 26.

디버깅

: 프로그래밍에서 쓰이닌 80 퍼센트, 소프트웨어에 발생하는 문제의 원인을 찾는 것!! 
만든느 과정중에 갖은 오류를 발견함. 디버그를 개발중인 상태를 의미하기도 함. 

코드에 오타나 오류, 논리 오류, 프로그램 안맞거나, 예상하지 못한 오류들로 생겨남. 

설계도를 살펴보고 문제를 파악하게 된다. 

코드 특정 단계마다 살펴보도록 하는 것이 중요하다!! 

-> VS Code, IntelliJ 등 개발툴들은 대부분 디버깅 기능을 제공함.

 

컴파일러 Vs 인터프리터

컴퓨터의 언어인 0과 1의 바이너리 코드로 변환하기 위해서

C, C++, 자바는 컴파일러를 거치게 된다. (미리 기계언어로 주기 전에 컴파일을 진행하게 된다.)

-> (자바의 경우) 클래스 파일을 통해서 자바가사머신이라는 프로그램을 통해서 모든 기계에서 동작하도록 함! 

 

인터프리터 언어(스크립트 언어) 

: 컴파일 하는 과정 없이 실시간 번역해주는 것이 인터프리터이다! -> 보다 쉽게 노출되고 수정은 쉽지만, 애매하다! 

-> 이로 인해 둘을 적적히 선택해서 써야 한다. 

 

빌드 : 개발자가 작업하는 폴더와 파일들을(코드파일, 라이브러리, 이미지나 기타 파일들) 다른 형태로 변형하고 압축함.

이를 빌드한다고 함. 사용자 편의성을 위해서 exe파일로 만들거나, 사용자가 알아보기 어렵게 난독화하는 경우가 있음. 

작업하는 프루젝트 파일들을 출시하기 적합하는 작업을 빌드라고 보면 된다.

 

배포 : 코딩해서 빌드한 결과물을 사용자에게 전달하는 과정을 뜻함. 
웹사이트 배포가 특히 그렇다. 작업하는 바를 반영하는 것임 

 

환경 변수 : 소프트웨어가 동작하는 환경. 

1. 원하는 작업을 적절한 위치에서 수행하는 기능 

2. 환경의 조건마다 시행하는 경우를 나눌 수 있음. (dev - 개발용, prod - 배포용)

3. 오픈소스로 공개된느 경우 보안이 필요한 경우! 

 

도커의 컨테이너 등의 경우도 말할 수 있다. 

 

라이브러리 : 특정 기능이 함수나 클래스로 공개되서, 이를 활용하는 경우! 

모듈화된 코드 또는 그 묶음을라이브러리라고 함.

프레임워크

는 기본 골격을 갖춘 키트라고 생각하면 됨.

스프링, 장고, .NET, 라라벨, Express, Vue 등이 이에 해당함 

 

--------------------------------------------------------------------

출처

유투브-얄팍한 코딩 사전 (youtu.be/GYmuQJiPeM4)

반응형