이펙티브 자바 04
자바를 잘 다루기 위해 이펙티브 자바를 읽고 정리한 내용입니다. :) 5장. 제네릭 제네릭(Generics)은 타입을 클래스나 메서드 정의 시점이 아닌, 사용하는 시점에 지정할 수 있게 해주는 자바의 기능이다. 이 덕분에 컴파일 타임에 타입 안전성을 확보하면서도, 중복 없이 재사용 가능한 코드를 만들 수 있다. 26. 로 타입은 사용하지 마라....
자바를 잘 다루기 위해 이펙티브 자바를 읽고 정리한 내용입니다. :) 5장. 제네릭 제네릭(Generics)은 타입을 클래스나 메서드 정의 시점이 아닌, 사용하는 시점에 지정할 수 있게 해주는 자바의 기능이다. 이 덕분에 컴파일 타임에 타입 안전성을 확보하면서도, 중복 없이 재사용 가능한 코드를 만들 수 있다. 26. 로 타입은 사용하지 마라....
4월 1주차, 한 주 동안 개인적으로 흥미롭게 본 인사이트들을 소개합니다 :) 면접관이 물었다. 만일 스택이 매우 커질 수 있다면 힙은 불필요할까? “스택만 무한히 크면 힙이 필요 없지 않나요?”라는 질문은 얼핏 들으면 그럴싸하다. 하지만 이 영상은 단순한 질문을 통해 스택과 힙이 ‘왜’ 존재하는지를 다시 생각하게 해준다. 단순히 메모리 구조 ...
자바를 잘 다루기 위해 이펙티브 자바를 읽고 정리한 내용입니다. :) 4장. 클래스와 인터페이스 클래스와 인터페이스는 객체지향 프로그래밍의 중심이다. 이 장에서는 클래스와 인터페이스의 설계, 구현, 접근 제어, 상속 및 컴포지션 활용에 대해 다룬다. 15. 클래스와 멤버의 접근 권한을 최소화하라 정보 은닉(캡슐화)은 모듈성과 유지보수성...
AI 에이전트로 구현하는 RAG 시스템(w. LangGraph)를 듣고 요약 정리한 내용입니다. 1. 들어가며 최근 LLM 기반의 RAG(Retrieval-Augmented Generation)가 챗봇, 검색 서비스, 문서 요약 등 다양한 영역에서 활용되고 있다. 하지만 기본적인 RAG 방식에는 몇 가지 한계가 있다. 단일 질문-응답 구조로는 ...
자바를 잘 다루기 위해 이펙티브 자바를 읽고 정리한 내용입니다. :) 3장 모든 객체의 공통 메서드 Java의 모든 객체는 Object 클래스를 상속한다. 따라서 equals, hashCode, toString, clone, finalize 등의 메서드를 상속받게 되며, 이 중 대부분은 상황에 맞게 재정의가 필요하다. 이 장에서는 언제, 어떻게 재...
3월 5주차, 한 주 동안 개인적으로 흥미롭게 본 인사이트들을 소개합니다 :) 코드 품질 개선 기법 시리즈 소개 LY Corporation(소프트뱅크 그룹과 네이버가 합작한 A홀딩스 산하 종합 IT 기업)에서 작성한, 널리 적용 가능한 코드 품질 개선 기법 시리즈다. 현재 6편까지 올라와 있고, 범용적으로 적용할 수 있는 유용한 내용이 많다. 요즘...
3월 4주차 1주일 동안 개인적으로 흥미롭게 본 insights를 소개합니다 :) 린스타트업, 애자일 모델, MVP의 시대는 끝났을까 스타트업에서 빠질 수 없는 문화인 에자일 모델이 끝났다는 제목이 내 이목을 이끌었다. MVP 검증을 넘어선 완벽한 MMP(Minimal Marketable Product)가 필요하다고 말한다. AI가 개발자를 바보로...
코드팩토리 MSA의 요소6가지 영상을 보고 정리한 내용입니다 :) MSA는 왜 등장했을까? 최근 마이크로서비스 아키텍처(MSA, Microservice Architecture)는 대규모 서비스를 운영하는 데 있어 중요한 선택지로 떠오르고 있다. 하지만 MSA는 단순히 서비스의 규모가 커졌기 때문에 등장한 것이 아니다. 그 배경에는 모놀리식 아키텍처...
자바를 잘 다루기 위해 이펙티브 자바를 읽고 정리한 내용입니다. :) 2장. 객체 생성과 파괴 1. 생성자 대신 정적 팩토리 메서드를 사용하라 정적 팩토리 메서드의 장점 이름을 가질 수 있다. 호출될 때마다 인스턴스를 새로 생성하지 않아도 된다. 반환 타입의 하위 타입 객체를 반환할 수 있는 능력이 있다. 입력 매개변수에 따라 매번...
왜 코틀린일까? 이직을 준비하며 여러 회사를 살펴보니, 많은 곳에서 코틀린 + 스프링(코프링) 조합을 사용하고 있었다. 이를 계기로 코틀린에 대한 필요성을 느끼고 본격적으로 공부를 시작하게 되었다. 1. 코틀린의 등장 배경 프로그래밍 언어는 시대의 흐름에 따라 발전해 왔다. 자바는 오랫동안 백엔드와 안드로이드 개발의 대표적인 언어로 자리 잡았지만,...