본문 바로가기
728x90

프로그래밍41

Optional Java의 `Optional` 클래스는 값의 존재 여부를 나타내는 컨테이너 객체로, null을 안전하게 처리하기 위해 사용됩니다. 값이 존재하면 해당 값을 포함하고, 값이 없으면 비어 있는 객체를 반환합니다. 이를 통해 NullPointerException(NPE)을 방지하고 더 명확한 코드를 작성할 수 있습니다.### 특징 1. null 대체    - `Optional`을 사용하면 null 값을 직접 다루지 않아도 되며, 값이 비어 있는 경우를 안전하게 처리할 수 있습니다. 2. 표준화된 API    - 값의 존재 여부를 확인하고 처리할 수 있는 다양한 메서드가 제공됩니다. 3. 함수형 프로그래밍    - 함수형 스타일로 값을 처리하고, 필요한 경우 추가 작업을 체이닝으로 처리할 수 있습니다.### 사.. 2025. 4. 8.
Enum Java의 enum은 특정 값의 집합을 정의할 때 사용되는 데이터 타입으로, 열거형(enumeration)을 구현하는 데 적합합니다.이를 활용하면 상수 집합을 더 가독성 있고 타입 안정성을 보장하는 방식으로 사용할 수 있습니다.예를 들어, 특정 값만 허용되는 경우에 enum을 사용하면 실수를 방지할 수 있습니다.특징1. 값의 집합 정의    - enum을 사용하면 미리 정의된 상수 값의 집합을 만들 수 있습니다.    - 예: 색상, 요일, 방향 등과 같이 제한된 선택지가 있는 경우 사용. 2. 타입 안정성    - enum은 특정 값 외의 데이터가 들어갈 수 없도록 제한합니다. 3. 객체처럼 활용 가능    - 각 상수는 객체로 취급되며, 메서드와 필드를 가질 수 있습니다. 4. Switch문과 함께 .. 2025. 4. 8.
JPA 정리 JPA 기본 키 자동 생성 전략 (@GeneratedValue)JPA에서 기본 키를 자동 생성하려면 @GeneratedValue 애너테이션을 사용하며, 다음 네 가지 전략을 선택할 수 있습니다.1. IDENTITY데이터베이스의 AUTO_INCREMENT 기능을 사용하여 기본 키를 자동 생성주로 MySQL, PostgreSQL 등에서 사용즉시 INSERT가 발생해야 ID를 알 수 있어 영속성 컨텍스트의 배치(batch) 처리 기능이 제한됨@Id@GeneratedValue(strategy = GenerationType.IDENTITY)private Long id;2. SEQUENCE데이터베이스의 시퀀스 객체를 사용하여 기본 키를 생성주로 Oracle, PostgreSQL, H2 등에서 사용@SequenceG.. 2025. 3. 27.
타입스크립트 정리 TypeScript는 JavaScript의 상위 집합(Superset)으로, 정적 타입을 지원하는 프로그래밍 언어입니다. 주로 JavaScript의 단점을 보완하고, 대규모 프로젝트에서 코드의 안정성과 유지보수성을 높이기 위해 사용됩니다.1. TypeScript의 특징✅ 정적 타입(Static Typing)변수, 함수의 매개변수, 반환값 등에 타입을 명시적으로 지정할 수 있습니다.컴파일 단계에서 타입 오류를 확인할 수 있어 런타임 오류를 줄일 수 있습니다.let message: string = "Hello, TypeScript!";message = 123; // ❌ 오류 발생 (string 타입에 숫자를 할당할 수 없음)✅ 인터페이스(Interface)객체의 구조를 정의하는 역할을 합니다.클래스에서 인터.. 2025. 3. 24.
728x90