빅데이터 관련 자료

개발 용어를 모르는 초보자를 위한 정리

carpe08 2025. 6. 23. 18:13
320x100

※ 본 포스팅은 주변에서 자주 들리는 개발 용어들을 최대한 쉽게 풀어 쓴 글입니다. 개발 입문자 또는 용어에 익숙하지 않은 분들을 위해 조잡하더라도 친절하게 설명하려고 했습니다. 혹시 편협하거나 틀린 내용이 있다면, 언제든 지적 부탁드립니다!


변수 (Variable)

프로그래밍에서 데이터를 저장하기 위한 '이름 붙은 공간'입니다. 숫자, 문자, 불리언 등 다양한 값을 저장할 수 있습니다. 간단히 말해, 값에 이름을 붙여 다루기 쉽게 만들어주는 것입니다.

함수 (Function)

특정 동작을 수행하는 코드의 묶음입니다. 자주 쓰이는 작업을 반복하지 않고 재사용할 수 있게 도와줍니다. 예: print()는 출력하는 함수입니다.

조건문 (If Statement)

어떤 조건이 참인지 거짓인지에 따라 다른 코드를 실행하게 합니다. 예: “만약 나이가 20살 이상이면 입장 가능” 같은 구조입니다.

반복문 (Loop)

어떤 작업을 여러 번 반복하고 싶을 때 사용합니다. 대표적으로 for, while문이 있으며, 초보자에게는 리스트를 순회하거나 숫자를 세는 데 자주 쓰입니다.

클래스 (Class)

객체지향 프로그래밍의 핵심 개념으로, 관련된 변수와 함수들을 하나로 묶는 틀입니다. 현실 세계의 사물을 코드로 표현할 수 있게 해줍니다.

객체 (Object)

클래스를 기반으로 실제로 만들어진 '실체'입니다. 예를 들어, '자동차'라는 클래스가 있다면 '내 차', '네 차'는 객체가 됩니다.

주석 (Comment)

코드에 대한 설명을 작성할 수 있도록 해주는 기능입니다. 프로그램에 영향을 주지 않지만, 다른 사람이나 미래의 나를 위한 메모 역할을 합니다.


바닐라 JS (Vanilla JS)

프레임워크나 라이브러리 없이 순수 자바스크립트만을 사용하여 구현한 것을 뜻합니다. '그냥 JS 자체'라고 생각하면 됩니다.

보일러플레이트 코드 (Boiler Plate Code)

반복적으로 사용하는 코드 구조를 말합니다. 새 프로젝트를 시작할 때 항상 포함되는, '틀'처럼 쓰이는 코드들입니다. 코드의 재사용성과 생산성을 높이기 위한 용어입니다.

레거시 (Legacy)

개발자들 사이에서는 이전에 만들어진 시스템이나 소스를 의미합니다. 여전히 사용되고 있지만, 현재 기준에서는 오래된 방식이거나 유지보수가 어려운 경우가 많습니다.

RC / GA / M (라이브러리 버전 용어)

  • RC: Release Candidate. 출시 후보 버전으로 테스트는 거의 완료됐지만 안정성은 보장할 수 없음
  • GA: General Availability. 정식 릴리즈로 안정성이 검증된 버전
  • M: Milestone. 초기 테스트를 위한 개발 중간 버전

마일스톤 (Milestone)

프로젝트 진행 중의 주요 일정 또는 목표 시점을 말합니다. 전체 일정 중 중요한 체크포인트로 이해하면 됩니다.

데디케이티드 / 셰어드 (Dedicated / Shared)

  • Dedicated: 특정 클라이언트를 위한 전용 서버 사용 방식
  • Shared: 여러 클라이언트가 하나의 서버를 나누는 방식
    서버 리소스 배분 구조를 설명할 때 자주 사용되는 용어입니다.

스트럿츠 (Struts)

스프링 프레임워크가 널리 사용되기 전, 자바 웹 개발에서 사용되던 프레임워크입니다. 자바 기반 웹 애플리케이션을 만들기 위한 구조와 패턴을 제공합니다.

크로스 컴파일 (Cross Compile)

개발 중인 기기가 아닌 다른 하드웨어(예: 임베디드 장비)에서 실행 가능한 프로그램을 만들기 위한 컴파일 방식입니다.

컬 (curl)

C + URL의 약자로, 명령줄에서 다양한 프로토콜을 통해 데이터를 전송할 수 있는 도구입니다. API 호출 등에서 자주 사용됩니다.

데몬 (Daemon)

리눅스/유닉스 시스템에서 백그라운드에서 상시 작동하는 프로세스를 말합니다. 시스템이 켜질 때 자동 실행되는 프로그램 중 많은 것이 데몬입니다.

아파치 스파크 (Apache Spark)

하둡보다 빠른 속도로 대용량 데이터를 처리할 수 있는 분산 컴퓨팅 플랫폼입니다. 메모리 기반 처리 덕분에 실시간 분석에 강점을 가지고 있습니다.

쉘 (Shell)

운영체제와 사용자 간의 인터페이스입니다. 명령어를 입력하여 시스템을 조작할 수 있게 해주는 프로그램으로, CLI나 GUI 형태로 나뉩니다. 쉘에서 작성한 명령어 모음을 '쉘 스크립트'라고 합니다.

gcc (GNU Compiler Collection)

여러 프로그래밍 언어(C, C++, Java 등)를 컴파일할 수 있는 GNU 프로젝트의 컴파일러 모음입니다. 원래는 GNU C Compiler에서 출발했습니다.

오프프레미스 (Off-premise)

서버에서 소프트웨어가 동작하고, 클라이언트는 네트워크를 통해 접근하는 구조입니다. 우리가 흔히 사용하는 웹메일이나 클라우드 서비스가 대표적인 예입니다.

온프레미스 (On-premise)

사용자 클라이언트나 사내 네트워크 안에서 소프트웨어가 실행되는 방식입니다. 즉, 외부 서버가 아닌, 내 PC나 사내 서버에 직접 설치하여 사용하는 구조입니다.

CI / CD (지속적 통합 / 지속적 배포)

  • CI (Continuous Integration): 여러 개발자의 코드 변경 사항을 자주 통합하며, 자동화된 테스트로 품질을 유지하는 프로세스입니다.
  • CD (Continuous Delivery or Deployment): 테스트를 통과한 코드를 자동으로 배포하거나 릴리즈하는 단계입니다. 빠르고 안정적인 배포를 가능하게 합니다.

REST API (Representational State Transfer)

웹에서 리소스를 자원(URI)으로 표현하고, HTTP 메서드(GET, POST, PUT, DELETE 등)를 통해 상태를 주고받는 방식입니다. API 설계 시 가장 많이 사용하는 스타일입니다.

패키지 매니저 (Package Manager)

외부 라이브러리나 모듈을 설치하고 관리해주는 도구입니다. 예를 들어, JavaScript에선 npm, Python에선 pip, Linux에선 apt/yum이 이에 해당합니다.

IDE (통합 개발 환경)

Integrated Development Environment의 줄임말로, 코드 작성, 디버깅, 실행 등을 하나의 프로그램에서 통합적으로 할 수 있게 도와주는 툴입니다. 예: IntelliJ, VSCode, Eclipse


읽어주셔서 감사합니다.
추가하거나 보완할 점이 있다면 댓글로 자유롭게 알려주세요!

320x100
320x100