Curious Y

「Stay curious, keep learning and keep growing.」

Gof Design Pattern - 프록시 패턴

HeadFirst Design Pattern을 읽고

✏️ 프록시 패턴 Proxy Pattern 프록시 패턴 : 특정 객체로의 접근을 제어하는 대리인(특정 객체를 대변하는 객체) 제공 프록시 패턴을 사용하면 원격 객체, 생성하기 힘든 객체, 보안이 중요한 객체와 같은 다른 객체로의 접근을 제어하는 대리인 객체를 만들 수 있다. 원격 프록시를 써서 원격 객체로의 접근을 제어할 수 있다. 가...

Gof Design Pattern - 반복자 패턴, 컴포지트 패턴

HeadFirst Design Pattern을 읽고

✏️ 반복자 패턴 Iterator Pattern 반복자 패턴 : 컬렉션의 구현 방법을 노출하지 않으면서 집합체 내의 모든 항목에 접근하는 방법을 제공함. 반복자 패턴을 사용하면 각 항목에 일일이 접근할 수 있게 해주는 기능을 집합체가 아닌 반복자 객체가 책임진다는 장점이 있다. 반복자 객체와 집합체의 기능이 분리되면 집합체 인터페이스와 구...

DB - Select for update

Select for update

Select for update 데이터 수정하려고 SELECT 하는 중이야~ 다른 사람들은 데이터에 손 대지 마! 하는 것 동시성 제어를 위하여 특정 ROW에 대해 베타적 LOCK을 거는 기능 가정 먼저 LOCK을 획득한 SESSION의 SELECT 된 ROW들이 UPDATE 쿼리후 COMMIT 되기 이전까지 다른 SESSION들은 해당...

Gof Design Pattern - 템플릿 메소드 패턴

HeadFirst Design Pattern을 읽고

✏️ 템플릿 메소드 패턴 Template Method Pattern 템플릿 메소드 패턴 : 알고리즘의 골격을 정의한다. 알고리즘의 일부 단계를 서브클래스에서 구현할 수 있으며, 알고리즘의 구조는 그대로 유지하면서 알고리즘의 특정 단계를 서브클래스에서 재정의할 수도 있다. 알고리즘의 틀(템플릿)을 만들고, 그 클래스에서 알고리즘을 독점하여 ...

6월 30일 (목)

2022년 상반기 회고

6월을 닫으며 상반기 회고하기 이제 막 주니어 개발자로 커리어를 시작한 상반기 회고다. 개발자로 성장하기 1월 👩🏻‍💻 본격적인 피처 개발 작년 12월에 맡았던 거래제한 화면과 기능 개발건이 유닛 테스트까지 마치고서 협의 하에 해당 페이지를 삭제하기로 결정되었다. 1월에는 거래제한에 소속된 기한이익상실 등록 기능을 화면 없이 인터페이스를 구현...

Gof Design Pattern - 싱글턴 패턴

HeadFirst Design Pattern을 읽고

✏️ 싱글턴 패턴 Singleton Pattern 싱글턴 패턴 : 클래스 인스턴스를 하나만 만들고, 그 인스턴스로의 전역 접근을 제공하는 패턴. 🔂 싱글턴 패턴 구현법 클래스의 하나뿐인 인스턴스를 저장하는 정적static 변수 private으로 생성자 선언. 해당 클래스에서만 클래스의 인스턴스를 만들 수 있음 public getIns...

6월 16일 (목)

비즈니스 도메인에 대한 이해

비즈니스 도메인 이해하기 비즈니스 모델을 알아야 실제 업무에 맞게 개발할 수 있다고 한다. 피처 개발을 할 때 기획자가 시키는대로 개발하는 것이 아니라, 함께 고민하면서 잘못된 부분을 짚어가며 개발할 수 있다. 내가 속한 여신만 보아도, 처리가 일어날 때 등록되는 코드 하나하나에 다른 서비스들과 금액 계산에 영향을 주기 때문에 각 업무가 어떻게 영향...

Java - 45) 스트림은 주의해서 사용하라

<이펙티브 자바>

이전에 코딩해놓은 서비스의 코드를 다시 보면서 stream으로 리팩토링하는 작업을 하고 있다. 놀랍도록 간결해지고 있다! 스트림은 주의해서 사용하라 스트림을 제대로 사용하면 프로그램이 짧고 깔끔해지지만, 잘못 사용하면 읽기 어렵고 유지보수도 힘들어진다. Stream API Stream API는 다량의 데이터 처리 작업을 돕고자 탄생했다....

Gof Design Pattern - 팩토리 패턴 (팩토리 메소드, 추상 팩토리)

HeadFirst Design Pattern을 읽고

✏️ 팩토리 패턴 Factory Pattern ‘new’연산자를 사용하면 구상 클래스의 인스턴스가 만들어진다. 구상 클래스를 바탕으로 코딩하면 나중에 수정해야 할 가능성이 커지고 유연성이 떨어진다. 다형성을 활용하면 시스템에서 일어날 수 있는 여러 변화에 대처할 수 있다. 구현해야 하는 클래스에 implements해서 사용할 수 있기 때문이...

6월 9일 (일)

신용카드와 직불카드에 대해서

Credit or Debit? 우리가 아는 카드는 대금 결제 방법에 따라 신용카드Credit card, 직불카드Debit card, 선불카드Prepaid card로 분류한다. Credit과 Debit은 회계에서 각각 대변과 차변을 뜻하는데, Credit은 ‘신용’이라는 어원에서 비롯되어, ‘신용거래’ 또는 ‘융자’가 들어오는 것을 기입하는 용도로 ...