개발 현장에서 자주 쓰이는 약어 정리 및 예시

용과젤리·2025년 2월 12일
0

소프트웨어 개발 현장에서는 수많은 약어가 사용됩니다.
이 글에서는 WIP, PR, CI/CD 등 개발자들이 일상에서 자주 마주치는 약어들을 정리하고,
각 약어의 의미와 실제 사용 예시를 함께 소개합니다.
프로젝트나 팀마다 약어의 사용법이 조금씩 다를 수 있으므로, 참고용으로 활용해 보시기 바랍니다.


1. WIP (Work In Process)

  • 의미: 작업이 진행 중임을 나타내며, 아직 완전히 완료되지 않은 상태를 의미합니다.
  • 예시:
    • Git 브랜치 이름에 WIP를 붙여서 작업 중임을 표시
      feature/login-WIP
    • 커밋 메시지에 WIP: 로그인 페이지 레이아웃 구현 중 표기

2. PR (Pull Request)

  • 의미: 개발자가 작업한 코드를 메인 브랜치에 병합하기 위해 리뷰를 요청하는 과정입니다.
  • 예시:
    • "새로운 기능 추가를 위해 PR을 생성했습니다."
  • 참고: GitHub Pull Request

3. CI (Continuous Integration)

  • 의미: 개발자가 작성한 코드를 정기적으로 통합하여 자동 빌드 및 테스트를 수행하는 프로세스입니다.
  • 예시:
    • "Jenkins와 GitHub Actions를 활용해 CI 파이프라인을 구축했습니다."
  • 참고: Continuous Integration - Wikipedia

4. CD (Continuous Delivery / Continuous Deployment)

  • 의미: CI 이후에 코드를 자동으로 배포하는 과정을 의미합니다.
    • Continuous Delivery: 자동화된 테스트 후 배포 가능한 상태까지 유지
    • Continuous Deployment: 테스트 통과 후 자동으로 실제 환경에 배포
  • 예시:
    • "CD 덕분에 새로운 기능이 매일 자동 배포되고 있습니다."
  • 참고: Continuous Delivery - Wikipedia

5. API (Application Programming Interface)

  • 의미: 애플리케이션 간의 상호작용을 위한 인터페이스로, 데이터를 주고받거나 기능을 호출할 때 사용됩니다.
  • 예시:
    • "Google Maps API를 사용해 지도 기능을 구현했습니다."
  • 참고: API - Wikipedia

6. SDK (Software Development Kit)

  • 의미: 특정 플랫폼이나 서비스를 개발할 때 필요한 도구, 라이브러리, 문서 등을 모아둔 패키지입니다.
  • 예시:
    • "Android SDK를 설치하여 모바일 앱 개발을 시작했습니다."
  • 참고: Software Development Kit - Wikipedia

7. IDE (Integrated Development Environment)

  • 의미: 코드 편집, 디버깅, 빌드 등의 작업을 한 곳에서 할 수 있는 통합 개발 환경입니다.
  • 예시:
    • "Visual Studio Code, IntelliJ IDEA, Eclipse 등 다양한 IDE를 사용합니다."
  • 참고: IDE - Wikipedia

8. MVC (Model-View-Controller)

  • 의미: 애플리케이션을 모델, 뷰, 컨트롤러 세 부분으로 나누어 관리하는 디자인 패턴입니다.
  • 예시:
    • "이 웹 애플리케이션은 ASP.NET MVC 아키텍처를 기반으로 설계되었습니다."
  • 참고: MVC - Wikipedia

9. MVVM (Model-View-ViewModel)

  • 의미: 특히 WPF나 WinUI 등 UI 프레임워크에서 사용되는 디자인 패턴으로, UI와 비즈니스 로직을 분리합니다.
  • 예시:
    • "WPF 애플리케이션 개발 시 MVVM 패턴을 적용해 코드 유지보수성을 높였습니다."
  • 참고: MVVM - Wikipedia

10. OOP (Object-Oriented Programming)

  • 의미: 객체를 중심으로 소프트웨어를 설계하는 프로그래밍 패러다임입니다.
  • 예시:
    • "C#, Java, Python 등은 OOP를 기반으로 개발됩니다."
  • 참고: OOP - Wikipedia

11. DRY (Don't Repeat Yourself)

  • 의미: 중복 코드를 작성하지 않고 재사용 가능한 모듈이나 함수를 활용하라는 개발 원칙입니다.
  • 예시:
    • "공통 기능은 별도의 유틸리티 함수로 분리하여 DRY 원칙을 준수했습니다."
  • 참고: DRY - Wikipedia

12. TDD (Test-Driven Development)

  • 의미: 테스트 코드를 먼저 작성한 후, 그에 맞춰 실제 코드를 구현하는 개발 방법론입니다.
  • 예시:
    • "TDD 방식을 적용해 기능 구현 전에 유닛 테스트를 작성했습니다."
  • 참고: TDD - Wikipedia

13. BDD (Behavior-Driven Development)

  • 의미: 애플리케이션의 행위를 명세화한 후, 이를 테스트 시나리오로 구현하는 방법론입니다.
  • 예시:
    • "Cucumber를 활용해 BDD 스타일의 테스트 케이스를 작성했습니다."
  • 참고: BDD - Wikipedia

14. POC (Proof of Concept)

  • 의미: 새로운 아이디어나 기술의 실현 가능성을 검증하기 위해 간단히 구현한 프로토타입입니다.
  • 예시:
    • "신규 기능 도입 전에 POC를 통해 기술 타당성을 확인했습니다."
  • 참고: Proof of Concept - Wikipedia

15. MVP (Minimum Viable Product)

  • 의미: 최소한의 기능만을 구현하여 시장 반응이나 사용자 피드백을 받기 위한 초기 제품 버전입니다.
  • 예시:
    • "MVP를 먼저 출시한 후 피드백을 받아 기능을 점진적으로 확장할 계획입니다."
  • 참고: MVP - Wikipedia

16. CRUD (Create, Read, Update, Delete)

  • 의미: 데이터베이스나 API에서 기본적으로 수행되는 데이터 조작 작업을 의미합니다.
  • 예시:
    • "사용자 관리 시스템은 CRUD 연산을 기반으로 설계되었습니다."
  • 참고: CRUD - Wikipedia

17. REST (Representational State Transfer)

  • 의미: HTTP를 기반으로 리소스에 접근하는 웹 서비스 설계 방식입니다.
  • 예시:
    • "우리 백엔드는 RESTful API를 통해 클라이언트와 데이터를 교환합니다."
  • 참고: REST - Wikipedia

18. CLI (Command-Line Interface)

  • 의미: 텍스트 기반의 인터페이스를 통해 시스템이나 애플리케이션을 제어하는 방식입니다.
  • 예시:
    • "Git CLI를 통해 브랜치 생성, 커밋, 머지 등의 작업을 수행합니다."
  • 참고: CLI - Wikipedia

19. JSON (JavaScript Object Notation)

  • 의미: 데이터 교환에 널리 사용되는 경량 텍스트 포맷입니다.
  • 예시:
    {
      "name": "Alice",
      "age": 28,
      "city": "Seoul"
    }
  • 참고: JSON - Wikipedia

20. XML (eXtensible Markup Language)

  • 의미: 데이터를 구조화하여 표현하는 마크업 언어입니다.
  • 예시:
    <user>
    <name>Alice</name>
    <age>28</age>
    <city>Seoul</city>
    </user>
  • 참고: XML - Wikipedia

추가 약어


결론

개발 현장에서는 위와 같이 다양한 약어가 사용됩니다.
각 용어의 의미와 사용 예시를 이해하면, 코드 리뷰나 문서 작성, 팀 커뮤니케이션에서 보다 원활하게 소통할 수 있습니다.
프로젝트나 팀 내에서 사용되는 약어에 대해 모두가 공통된 이해를 갖는 것이 중요합니다.


이 글이 개발 현장에서 약어를 이해하고 소통하는 데 도움이 되길 바랍니다!

profile
C#, .Net 개발자입니다.

0개의 댓글