일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- springboot
- 버전관리
- 데이터구조
- 소프트웨어
- 데이터분석
- 클라우드컴퓨팅
- 자료구조
- 디자인패턴
- 데이터과학
- 소프트웨어공학
- 프로그래밍
- 사이버보안
- 자바스크립트
- 컴퓨터비전
- 빅데이터
- 보안
- 딥러닝
- 데이터베이스
- 컴퓨터공학
- 알고리즘
- 파이썬
- 웹개발
- 인공지능
- I'm Sorry
- 네트워크보안
- 네트워크
- 머신러닝
- Yes
- 프로그래밍언어
- 컴퓨터과학
- Today
- Total
목록Proxy패턴 (2)
스택큐힙리스트
왜 Kotlin Delegation + Proxy 조합이 핫할까?Java에선 Proxy.newProxyInstance()·CGLIB 설정이 필수인데, Kotlin은 클래스 위임(class delegation) 문법 하나로 프록시를 뚝딱 만들 수 있다. by 키워드가 “이 인터페이스 구현은 저 객체에 전부 맡겨라”라고 선언해 주기 때문!핵심 아이디어: 위임 으로 ‘대리 접근’ 꿰차기Proxy 패턴이 원하는 건 “원본 객체 앞에 서서 접근을 제어”하는 것. Kotlin의 class delegation은 이미 메서드 호출을 원본에게 자동 위임해 주므로, 우리는 오버라이드할 메서드에 로깅·캐싱·권한 체크만 얹으면 끝이다.코드 ① – 로깅 프록시를 세 줄로interface OrderService { fun ..
1️⃣ Proxy 패턴, 한마디 정의‘Proxy(프록시)’는 대리인이라는 뜻 그대로, 원본 객체 앞에 서서 호출을 가로채거나 대신 처리하는 구조(Structural) 패턴이다. 클라이언트는 Proxy를 통해서만 원본에 접근하므로, 접근 제어·로깅·캐싱·지연 로딩 등을 가볍게 끼워 넣을 수 있다.2️⃣ 언제 써먹으면 좋은가?로깅·메트릭 수집 – 모든 서비스 메서드 앞뒤에 실행 시간을 재려 할 때보안·권한 체크 – 호출자 정보 확인 후 원본 메서드 실행 허용 여부 결정캐싱 – 동일 파라미터로 반복 호출 시 결과를 캐시해 DB 부하 절감가상 프록시(Virtual) – 고비용 객체를 ‘필요할 때만’ 초기화해 메모리 세이브이처럼 “추가 책임을 원본 코드 수정 없이 붙이고 싶다”는 요구가 나오면 Proxy가 정답이..