본문 바로가기
반응형

CS19

SOLID 원칙 필자는 암묵적으로 지켜오려고 노력했던 SOLID원칙에 대해서 명확하게 하기 위해서 학습을 진행했습니다. 1. S(단일 책임 원칙) 정의 1개의 모듈은 하나의 Actor를 책임 진다는 뜻 입니다 모듈: 함수와 데이터구조로 이뤄진 하나의 응집체 입니다 Actor: 시스템/모듈을 사용자 및 이해관계자 입니다 하나의 역할을 해야하는건 Method이지 Class는 하나의 역할을 하게 되면 복잡성과 관리에 문제가 될 수 있다 다중 Actor 예시 Employee라는 Entity 객체가 있습니다 추가 비즈니스 로직 급여 징수 로직: 회계 Entity 저장 로직(DB): 일반 DB저장 업무 진행시간 report 기능: 인사 위의 3가지 요구사항은 모두 회계, 인사, 일반으로 총 3개의 Actor를 가지게 됩니다 다중A.. 2022. 2. 6.
Redis 기초 필자는 Redis를 사용하기 전 간단한 이론 공부를 하기 위해서 학습을 진행하였습니다 1. 정의 key-value 형태로 데이터를 관리하는 오픈소스 Redis는 빠른 속도와 간편한 사용법을제공 -> 캐시, 인증토큰, 섹션 관리 용도로 사용 2. 특징 in-memory data structure store 메모리에 데이터 저장 및 조회 -> 빠른 속도 key - value 형태로 데이터 저장 single thread 기반 data 만료시간 지정 가능 여러가지 value type 설정가능 string, set, hash, list, bit field, sorted set ... etc 3. 자료구조 제공에 따른 편의성 개발의 편의성과 난이도 조절 가능 ex1: ranking 기능 구현 일반 RDB를 scor.. 2022. 2. 6.
예외(Exception) 예외 검사 예외 호출 하는 쪽에서 복구를 해야하는 로직을 검사 예외로 잡습니다 호출자가 Catch문을 사용해서 예외를 잡아 처리하거나, 더 밖으로 전파 하도록 강제 해야합니다 복구 가능성이 존재할 떄 사용합니다 비검사 예외 모든 비검사 throwable은 RuntimeException을 상속받은 예외들이어야 합니다. 런타임 예외 프로그래밍 오류를 나타낼때 사용합니다 전제조건을 만족하지 못할때 주로 사용합니다 ArrayOutOfBoundException이 대표적인 예시입니다 에러 정의: 시스템 종료되어 할 수준의 상황이거나 수습이 불가능한 상황을 의미 OutOfMemorym StackOverFlow가 대표적인 예시 입니다 Checked Exception과 UnCheckedException Checked E.. 2022. 1. 20.
함수형 프로그래밍 필자의 생각 비즈니스 로직 복잡도가 높아짐에 따라 사이드 이펙트를 유지 보수성에 따라서 함수형이 뜨고 있습니다 필자는 Java카테고리에 넣기에는 애매한 부분이 있지만 다른 카테고리에 넣기 애매해서 java category에 넣는 걸 결정 했습니다 1. 함수형 프로그래밍 등장배경 비즈니스 로직이 복잡해 지기 때문에 여러 코드와 비즈니스 로직이 스파게티와 같이 엉키는 이슈가 자주 발생 사이드 이펙트와 같은 유지 보수에 어려움을 유발하는 요소들이 많이 발생하게 되었습니다. 사이드 이팩트를 제거 하기 위해서 일관적인 로직을 순수 함수로 정의하여 가독성을 높이고 유지 보수에 편리함을 제공하기 위해 나왔습니다. 2. 함수형 프로그래밍의 특징 순수 함수 정의 부수효과가 없는 함수 즉, 어떤 함수에 동일한 인자를 주었.. 2022. 1. 18.
반응형