Post

초보 개발자를 위한 용어사전

Glossary for junior developer And Honestly FOR ME

초보 개발자를 위한 용어사전

시작하면서

개발 공부를 하다가 모르는 용어를 마주하면 나의 GPT가 아주 쉽고 간단하게 답변해준다.

어느 누군가는 GPT로 어플리케이션도 만드는 등 창출해낼 수 있는 가치가 많다고 하는데,, GPT에 너무 의존하게 되면 스스로의 능력을 키우는데 어려움이 있다고 생각이 들었다.

이 블로그를 작성하게된 계기도 같은 이유에서 작성하게 된 것이다.

스스로 공부하고 기록하고 다시 복기를 위해 내가 작성한 글에서 찾아보는 습관으로 스스로 능력을 키울 수 있도록 하려고 한다.

이 용어사전도 마찬가지로 공부한 것을 정리하고 기록하기 위함이며, 모르는 용어가 생길 때마다 지속적으로 업데이트 하려 한다.


용어사전(A to Z)


C


Collection

여러 개의 데이터를 하나로 묶어서 관리할 수 있는 자료구조를 말한다. 프로그래밍에서 컬렉션은 데이터를 저장, 검색, 추가, 삭제 등의 작업을 효율적으로 수행할 수 있도록 도와주는 자료구조이다.

사용 예시

  • List: 순서가 있는 데이터들의 집합.
  • Set: 중복을 허용하지 않는 데이터들의 집합.
  • Map: 키-값 쌍(key-value pair)으로 데이터를 저장.

컬렉션의 역할

  • 데이터를 그룹으로 다루고 싶을 때 사용
    • 학생등의 이름 목록, 제품 리스트, 점수 집합 등을 컬렉션으로 저장하고 관리할 수 있음.

컬렉션과 엔티티의 관계: 컬렉션은 여러개의 엔티티를 묶어서 관리할 때 유용하게 사용됨.


D


Data Stream

데이터 스트림(data stream)이란, 일정 순서로 연속적인 데이터를 전송하는 방식을 의미한다. 컴퓨터 시스템은 일반적으로 스트림(stream) 형태로 이동하며, 프로그램은 이 스트림을 통해 데이터를 읽거나 쓸 수 있다.

데이터 스트림은 입력 스트림(input stream)과 출력 스트림(output stream)으로 나뉜다.

  • 입력 스트림: 데이터를 어딘가에서 읽어오는 스트림
    • 예시: 키보드 입력, 파일 읽기, 네트워크 수신
  • 출력 스트림: 데이터를 어딘가로 내보내는 스트림
    • 예시: 화면 출력, 파일 저장, 네트워크 송신

이러한 데이터 스트림은 파일, 네트워크, 메모리, 표준 I/O 장치 등에서 데이터를 다룰 때 사용하는 개념이다.


E


Entity

어떤 것을 나타내는 객체로 데이터베이스나 객체지향 프로그래밍에서 자주 쓰이는 개념이다. 주로, 하나의 객체가 실제 세계의 개체(사람, 제품, 주문 등)를 나타낼 때 엔티티라고 부른다.

엔티티의 특징

  1. 고유 식별자를 가짐.
    • 데이터베이스에서는 기본 키(primary key)를 사용하여 각 엔티티를 식별한다.
    • 예시) 학생 엔티티는 학생 ID로 고유하게 식별함.
  2. 속성을 가짐.
    • 엔티티는 특징을 나타내는 여러 속성을 가질 수 있음.
    • 예시) 학생 엔티티는 이름, 나이, 학번 등의 속성을 가질 수 있음.
  3. 행위를 가질 수 있음.
    • 엔티티는 동작(메서드)을 가질 수도 있음.
    • 예시) 학생 엔티티가 출석을 기록하거나 시험 점수를 계산하는 기능을 포함함.

I


Interface

인터페이스(interface)는 클래스나 객체가 구현해야 하는 행동(메서드)와 속성(프로퍼티)를 미리 정의한 틀을 제공한다. Kotlin에서 인터페이스는 클래스 처럼 기능을 정의하지만, 직접 구현은 하지 않고 선언만 한다.


M


Modifier

수정자(modifier)는 클래스, 메서드, 변수, 프로퍼티 등에 추가적인 동작이나 제약 조건을 부여하기 위해 사용되는 키워드이다.

Kotlin에서의 수정자의 역할

  1. 접근 제어
    • 클래스, 메서드, 변수 등이 어디서 접근 가능한지를 결정
    • 예) public, private, protected
  2. 동작 제어
    • 메서드나 변수의 특정 동작을 지정.
    • 예) abstract, final, open
  3. 메모리 및 동시성 제어
    • 변수가 스레드 간에 공유되거나 메모리에서 특정 방식으로 동작하도록 제어.
    • 예) synchronized, volatile
  4. 특정 속성 부여
    • 특정 변수나 클래스가 읽기 전용, 상수, 또는 특정 기능을 갖도록 설정.
    • 예) const, lateinit

P


Property

  • 기본 개념
    • 클래스는 객체(object)를 만들기 위한 “설계도”이다.
    • 프로퍼티는 그 클래스가 가진 특징이나 상태를 의미한다.
    • 예시
      1
      2
      3
      4
      
      class Person {
          var name: String = "MyName"   // "이름"이라는 특징을 저장하는 프로퍼티
          var age: Int = 20             // "나이"라는 특징을 저장하는 프로퍼티 
      }
      
    • 구성
      • 필드(field): 데이터 및 값을 저장하는 공간.
      • Getter와 Setter: 데이터를 가져오고(get) 설정하는(set)하는 방법.
        • 프로퍼티의 읽기와 쓰기는 일반적으로 게터(getter)와 (setter) 메소드의 호출으로 변환된다.
        • 사용 예시 ```kotlin class Person { var name: String = “” // 프로퍼티 (기본 getter와 setter가 자동으로 생성됨.) }

        fun main() { val person = Person() person.name = “Gumraze” // Setter를 사용해 값을 설정함. println(person.name) // Getter를 사용해 값을 가져오기. } ```


S


Snippet

  • 프로그래밍에서 자주 사용되는 코드 조각이나 짧은 텍스트를 의미한다.
  • 일반적으로 개발자들이 반복적으로 사용하는 코드 패턴이나 명령어를 더 빠르고 효율적으로 작성할 수 있도록 미리 준비된 형태로 제공된다.
  • 주요 특징
    • 짧고 간결함.
    • 재사용 가능함.
    • IDE를 통한 자동 완성.
    • 템플릿 기반.

Standard Input Stream: 표준 입력 스트림

표준 입력 스트림이란 외부로부터 데이터를 입력 받을 수 있도록 제공되는 기본 데이터 흐름이다. 데이터를 입력 받는 가장 기본적인 방법 중 하나는 표준 입력 스트림(흔히 stdin이라고 줄여 사용)을 사용하는 것이다. 따라서, 표준 입력 스트림은 운영체제에서 제공하며, 프로그램이 외부 환경으로부터 데이터를 읽을 수 있는 경로를 제공한다.

프로그래밍 언어에서도 표준 입력 스트림을 통해 데이터를 요청할 수 있다.

  • Kotlin/Java
    • 표준 입력 스트림은 System.in 객체로 표현됨.
    • 이를 사용하기 위해 Scanner 또는 readLine() 등의 메서드를 사용해야한다.
      1
      
      val input = readln()
      
  • Python
    • Python에서는 input() 함수를 사용함.
      1
      2
      
      data = input("Enter something: ")
      print(f"You entered: {data}")
      

T


Type inference

프로그래밍 언어에서 변수나 표현식의 타입(자료형)을 명시적으로 지정하지 않아도, 컴파일러가 코드의 문맥을 분석하여 해당 타입을 자동으로 결정하는 기능이다.

This post is licensed under CC BY 4.0 by the author.