본문 바로가기
728x90
반응형

Programming/Common5

API란 무엇인가? IT업계에서 자주 사용되는 API(Application Programming Interface)의 의미에 대해 나 나름대로 정리하려한다. API의 정의API란 Application Programming Interface의 약자이다. 한 문장으로 정의하면, 프로그램 사이의 통신을 위한 약속이다. ‘Interface’라는 단어에 집중하면 단순히 연결창구 정도로만 생각하기 쉬운데, API의 진짜 핵심은 ‘약속’이라는 개념에 있다. 약속에 대해 자판기로 비유를 한번 들어보자. 자판기에서 “콜라 버튼”을 누르면 콜라가 나온다.사용자는 자판기 내부가 어떻게 작동하는지 몰라도, 버튼을 누르는 방법(인터페이스)만 알면 된다. API도 마찬가지로, 내부 동작은 몰라도 정해진 방법대로 요청만 하면 결과를 얻을 수 있다. .. 2025. 7. 6.
마이그레이션, 컨버팅, 포팅 헷갈리는 용어 3가지 마이그레이션(Migration), 컨버팅(Converting), 포팅(Porting)을 정리해보려고 한다.마이그레이션(Migration)전체 시스템이나 데이터를 '이전 환경에서 새로운 환경으로 옮기는 것'을 의미한다. 일반적으로 더 나은 또는 다른 운영 체제, 하드웨어, 데이터베이스 등으로 옮겨가는 것을 말한다. 키워드는 '환경의 이전'이다. 예를 들어, 사내 서버에서 클라우드 환경으로 데이터 및 시스템을 옮기는 것.오래된 운영체제(예: 윈도우 7)에서 새로운 운영체제(예: 윈도우 11)로 업그레이드하며 데이터와 설정을 옮기는 것.휴대폰 데이터를 새로운 휴대폰으로 동기화하는 것.등이 있다.컨버팅(Converting) 같은 플랫폼 내에서 개발 언어만 변경하여 동일한 기능을 수행하도록.. 2025. 7. 5.
사용자 변수 vs 시스템 변수 사용자 변수와 시스템 변수의 차이? 사용자 변수컴퓨터에 있는 각 계정에서 사용하는 변수. 해당 사용자의 계정으로 컴퓨터에 로그인 시에만 적용되는 변수. ex) 사용자1에 python 설정사용자1 로그인 → cmd에서 python 명령어 사용 가능사용자2 로그인 → cmd에서 python 명령어 사용 불가사용자3 로그인 → cmd에서 python 명령어 사용 불가 시스템 변수 시스템 전반에 걸쳐 적용되는 변수, 즉 전역변수와 같은 개념이다. ex) 시스템 변수에 python 설정사용자1 로그인 → cmd에서 python 명령어 사용 가능사용자2 로그인 → cmd에서 python 명령어 사용 가능 사용자3 로그인 → cmd에서 python 명령어 사용 가능 사용자 변수와 시스템 변수의 우선순위대부분의 .. 2024. 4. 28.
환경변수 PATH란? 환경변수 PATH란?PATH는 운영체제가 명령행 또는 터미널 창에서 필요한 실행 파일을 찾는 데 사용하는 시스템 변수이다. PATH는 실행 파일이나 명령어를 찾는 경로를 설정하는 데 사용된다. 일반적으로 사용자가 입력한 명령어가 어디에서 실행 파일을 찾아야 하는지를 정의하며, 이를 통해 터미널 창에서 해당 명령을 입력하여 직접 실행할 수 있다.  Window에서 환경변수 PATH 설정 [시스템] - [정보] - [고급 시스템 설정] - [고급] - [환경 변수] - [시스템 변수] - [Path]에 설정하고 싶은 경로를 입력하면 된다. 여기에 경로를 설정하면, 터미널 어디서든 해당 프로그램을 실행할 수 있게된다. 일반적으로 응용프로그램을 설치하면 환경변수를 설정하는 것이 좋다.  예를 들어, 파이썬 설치.. 2024. 4. 28.
컴파일 언어 vs. 인터프리터 언어 컴파일 언어(Compile Language) 컴파일 언어는 컴파일러가 전체 소스 코드를 한 번에 기계어로 변환 후 실행파일을 만든다. 컴파일 언어는 컴파일 단계와 실행 단계가 분리되어 있으며, 컴파일은 단 한번만 수행한다. 이미 컴파일이 되었다면, 실행 시에는 컴파일 과정을 거치지 않고 실행만 하면 되므로 코드 실행 속도가 빠르다. 프로젝트의 규모가 클 경우 또는 소스 코드의 양이 많을 경우 컴파일 시간이 오래 걸릴 수 있다는 단점이 있다. 운영체제 이식성이 나쁘다. *컴파일러 : 프로그래밍 언어로 작성된 소스 코드를 컴퓨터가 이해할 수 있는 기계어로 변환하는 소프트웨어 도구. 고수준 언어를 저수준 언어로 변환해주는 프로그램. C, C++, C#, JAVA 등이 있다. 인터프리터 언어(Interprete.. 2023. 11. 12.
728x90
반응형