자세한 내용 보기

모두 보기

Java에서 Getter와 Setter를 사용해야 하는 이유와 캡슐화 쉽게 이해하기

Java 개발자라면 누구나 한번쯤 getter와 setter 메서드를 작성해 보았을 것입니다. 하지만 정작 왜 이러한 패턴을 사용하는지 깊이 생각해 본 적이 있으신가요? 이 글에서는 객체지향 프로그래밍의 핵심 원칙인 캡슐화와 함께 getter/setter의 필요성과 장점을 알아보겠습니다. 객체지향 설계 // 잘못된 방식 ( 외부에서 직접 접근 가능 ) public class Person { public String name ; } /…

꼴레뇨

Java Checked Exception과 Unchecked Exception 차이 이해하기

Java의 예외(Exception)은 크게 두 가지로 나루 수 있습니다. 바로 Checked Exception 과 Unchecked Exception 입니다. 예외 처리나 트랜잭션 처리 같은 기능을 구현할 때 꼭 알아야 하는 중요한 개념이지만 기초 공부를 충분히 하지 않았다면 정확히 이해하지 못하고 넘어가기 쉬운 부분입니다. 최대한 쉽게 설명해보겠습니다. Exception의 상속 구조 Object └── Throwable ├…

꼴레뇨

Java Wrapper 클래스 이해하기

Java 개발을 하다 보면  기본형(primitive type)과 참조형(reference type)의 차이가 정확히 뭔지 헷갈릴 때가 있습니다. Java 개발자라면 정확하게 알고 있어야 하는 내용인 것 같아서 간단하게 정리해보았습니다. Java Wrapper 클래스란? Wrapper 클래스 는 Java의 기본형 타입을 객체로 다룰 수 있게 해주는 클래스입니다. 아래와 같이 총 8개가 있습니다. 기본형(Primitive Type) Wrap…

꼴레뇨

Java 문자열 연산 비교: + 연산 vs StringBuilder vs StringBuffer

Java에서 String 객체는 불변(immutable)입니다. 한번 생성된 문자열은 변경할 수 없으며, 이러한 특성 때문에 문자열 연산을 할 때 다양한 방식이 존재합니다. 매번 '+' 연산자만을 이용해서 문자열을 합친다면 큰 문제가 발생할 수도 있습니다.  Java 공식 문서의 Class String 부분을 보면 제일 윗 부분에 "모든 문자열은 String 클래스의 인스턴스로 구현되어 있고, 상수이며, 생성된 후에는 …

꼴레뇨

ANSI JOIN 종류별 상세 설명과 활용 예제

INNER JOIN, LEFT OUTER JOIN 2개만 알면 거의 모든 요구 사항이 커버가 됩니다. 하지만 가끔 저 2개만 가지고는 안될 때가 있습니다. 실무에는 정말 다양한 요구 사항이 있기 때문에 모든 JOIN 유형을 다 알아두면 분명 도움이 될 일이 있을 겁니다. 샘플 테이블 및 데이터 생성 스크립트와 SQL은 PostgreSQL 기준으로 작성되었지만 대부분의 DB에서 그대로 사용이 가능합니다. 샘플 테이블 및 데이터 생성 스크립트 C…

꼴레뇨

DB 테이블명 및 칼럼명 대문자 보다는 소문자가 권장되는 이유

DB의 테이블명과 칼럼명을 정할 때 대문자로 할지 소문자로 할지는 상당히 고민되는 부분이다. 명확한 표준은 없지만 최근에는 거의 소문자로 통일되는 추세다. 그 이유를 알아보자. 대문자(UPPER CASE)를 피해야 하는 이유 대소문자 구분 문제 Windows에서는 대소문자를 구분하지 않는 것이 기본값이고, Linux에서는 대소문자를 구분하는 것이 기본값이다. 그리고 이 설정값은 변경이 가능하기도 하다. 이런 변수가 있기 때문에 소문자나 대문자…

꼴레뇨

개발자 커뮤니티 사이트 추천 모음

제가 일하다가 머리 식힐 때 자주 보는 개발자 커뮤니티 사이트를 소개해볼까 합니다. 혼자 공부만 하기 보다는 다른 개발자들과 고민, 경험, 관심사 등을 공유하는 것도 개발자로서 성장하는데 도움이 된다고 생각합니다. OKKY https://okky.kr 굉장히 오래된 전통 있는 사이트입니다. 사용자들의 활동도 활발하고, 영양가 있는 글들도 가끔 올라옵니다. 주로 SI/SM에 종사하는 개발자가 많고, 프리랜서 개발자도 많고, 취준생도 많습니다. …

꼴레뇨
게시물 더보기
검색결과 없음