Add IT용어 정리.md
This commit is contained in:
63
IT용어 정리.md
Normal file
63
IT용어 정리.md
Normal file
@@ -0,0 +1,63 @@
|
||||
# IT 및 개발 필수 용어 정리 가이드
|
||||
|
||||
IT와 개발 분야에서 자주 사용되는 핵심 용어 5가지에 대한 개념 정리 문서입니다.
|
||||
|
||||
---
|
||||
|
||||
## 1. LF / CRLF (줄바꿈 방식)
|
||||
텍스트 파일에서 **"여기서 줄을 바꾸고 다음 줄로 넘어가라"**라고 컴퓨터에게 지시하는 방식입니다. 과거 타자기 시절의 작동 방식에서 유래되었습니다.
|
||||
|
||||
* **CR (Carriage Return):** 커서를 줄의 맨 앞으로 이동 (`\r`)
|
||||
* **LF (Line Feed):** 커서를 한 줄 아래로 이동 (`\n`)
|
||||
|
||||
### 운영체제별 줄바꿈 표준
|
||||
| 방식 | 표현 | 주로 사용하는 운영체제 및 환경 |
|
||||
| :--- | :---: | :--- |
|
||||
| **LF** | `\n` | Linux, macOS, Git 시스템 기본 환경 |
|
||||
| **CRLF** | `\r\n` | Windows 오퍼레이팅 시스템 |
|
||||
|
||||
> 💡 **현업 실무 팁**
|
||||
> Windows 환경에서 작성한 소스 코드(CRLF)를 Linux 서버(LF)로 그대로 가져가면, 눈에 보이지 않는 `\r` 문자 때문에 구문 에러가 발생하거나 쉘 스크립트가 오작동할 수 있습니다. 또한 Git에서 줄바꿈 변경으로 인한 불필요한 변경 이력이 남을 수 있으므로 프로젝트 시작 전 팀 내 줄바꿈 설정을 통일하는 것이 좋습니다.
|
||||
|
||||
---
|
||||
|
||||
## 2. RP (Repository / 레포지토리)
|
||||
개발자들 사이에서 흔히 **"레포"** 또는 **"저장소"**라고 부르는 프로젝트의 핵심 보관소입니다.
|
||||
|
||||
* 단순히 소스 코드 파일만을 모아두는 일반 폴더와는 다릅니다.
|
||||
* 파일의 생성, 수정, 삭제 등 **과거 모든 변경 이력(버전)이 타임라인 형태로 기록·보관**되는 지능형 저장소입니다.
|
||||
* **로컬 레포지토리 (Local Repository):** 개발자 개인 PC에 존재하는 독립적인 작업 저장소
|
||||
* **원격 레포지토리 (Remote Repository):** GitHub, GitLab, 사내 서버 등 네트워크상에 존재하며 팀원들과 코드를 공유하고 협업하는 중앙 저장소
|
||||
|
||||
---
|
||||
|
||||
## 3. CI/CD (지속적 통합 / 지속적 배포)
|
||||
*※ 문의하신 'CRCD'는 소프트웨어 공학의 핵심 프로세스인 **CI/CD**의 오타로 판단되어 해당 기준으로 작성되었습니다.*
|
||||
|
||||
개발자가 코드를 수정하여 저장소에 반영한 순간부터, 이를 **자동으로 검증하고 실제 운영 서버에 안전하게 반영해 주는 자동화 파이프라인**을 의미합니다.
|
||||
|
||||
* **CI (Continuous Integration - 지속적 통합):** 여러 개발자가 각자 수정한 코드를 하나의 저장소에 모을 때, 시스템이 **자동으로 빌드하고 테스트(에러 검사)를 수행**하여 코드의 건전성을 상시 유지하는 과정입니다.
|
||||
* **CD (Continuous Deployment - 지속적 배포):** CI 단계를 통과하여 검증이 완료된 코드를 사용자가 사용할 수 있는 **운영 서버에 사람의 개입 없이 자동으로 반영(배포)**하는 과정입니다.
|
||||
|
||||
> 💡 **시스템 비유**
|
||||
> 수동 배포가 음식을 사람이 일일이 검수하고 직접 배달하는 방식이라면, CI/CD는 **"조리 직후 센서가 자동으로 위생과 맛을 검사(CI) $\rightarrow$ 통과 즉시 드론이 고객에게 자동 배송(CD)"**하는 지능형 자동화 공정 라인과 같습니다.
|
||||
|
||||
---
|
||||
|
||||
## 4. LLM (Large Language Model / 거대 언어 모델)
|
||||
인터넷상의 수많은 텍스트 데이터를 기반으로 학습하여, **사람의 언어(자연어)를 이해하고 문맥에 맞는 텍스트를 생성하도록 설계된 초대형 인공지능(AI) 신경망 모델**입니다.
|
||||
|
||||
* 현재 대화 중인 시스템을 비롯해 ChatGPT, Claude 등이 모두 LLM을 기반으로 작동합니다.
|
||||
* 방대한 양의 언어 규칙과 지식을 내재하고 있어 문맥 파악, 문서 요약, 외국어 번역뿐만 아니라 **프로그래밍 소스 코드 작성 및 디버깅**과 같은 고도의 언어적 업무를 훌륭히 수행합니다.
|
||||
|
||||
---
|
||||
|
||||
## 5. CLI (Command Line Interface / 명령줄 인터페이스)
|
||||
그래픽 화면과 마우스를 사용하는 대신, **텍스트 형태의 명령어를 직접 타이핑하여 컴퓨터 시스템을 제어하고 소통하는 인터페이스 방식**입니다.
|
||||
|
||||
* **GUI (Graphic User Interface):** 일반적인 사용자 환경. 윈도우 창, 그래픽 아이콘, 마우스 클릭 중심의 조작.
|
||||
* **CLI (Command Line Interface):** 개발자 및 서버 관리자 환경. `cd /var/www`, `git commit`, `docker-compose up` 같은 텍스트 기반 명령어 조작.
|
||||
|
||||
### 굳이 CLI를 사용하는 이유?
|
||||
1. **고성능 및 자원 효율성:** 그래픽을 표현하는 데 필요한 메모리와 CPU 자원을 소모하지 않으므로 서버 운영에 최적화되어 있습니다.
|
||||
2. **반복 작업의 자동화:** 자주 사용하는 일련의 명령어들을 쉘 스크립트(Shell Script) 파일로 묶어두면, 단 한 번의 실행으로 수백 가지의 복잡한 프로세스를 순식간에 자동 처리할 수 있습니다.
|
||||
Reference in New Issue
Block a user