[TIL] Business Logic

SooHyung Kim·2020년 5월 31일
0

Clean Architecture

목록 보기
2/3

비즈니스 로직은 어플리케이션에서 핵심이 되는 로직입니다.
또한, 비즈니스 로직은 유저의 요청에 따른 결과물을 만들어내기 위한 작업 하나하나를 의미합니다. 어플리케이션에서 핵심이 되는 로직이며, 이곳 저곳 흩어지면 안됩니다.

이유는 유저가 바라는 결과물을 코드로 옮기므로 품질이 중요하고 유지보수와 확장성을 고려해야하기 때문입니다. 개발자들은 비즈니스 로직을 잘 작성하고 레이어를 분리시키기 위해 프로그래밍 아키텍쳐를 고려하고 디자인패턴을 이용해야합니다.

비즈니스 로직은, Domain에 가까울수록 좋습니다.
Service 레이어가 다양한 Domain을 읽어 제공하기 때문입니다.
모델을 읽어 서비스를 제공하기 때문에 복잡한 서비스는 더 많은 Domain을 읽어야하고,
그렇기 때문에 Service 레이어에서 쓰인 로직의 복잡도가 매우 높아집니다.

복잡도가 증가하면 유지보수 및 테스트를 하기 어려운 상황이 발생하고 결국엔 유연하지 못한 software가 됩니다.

클린 아키텍처의 구현을 위해서는 상황에 맞는 적절한 디자인 패턴을 사용하는 것이 중요합니다.

여기서 디자인 패턴이란, 쉽게 말해 많은 프로그래머들이 인정한 효율적인 코딩 설계 구조입니다.
디자인 패턴을 알기 전에는 하나의 클래스 안에 온갖 코드가 존재했었습니다.

기능별로 그리고 성격에 따라 아무리 모듈화 하였다고 한들, 예를 들어 버튼 컨트롤의 이벤트에, 온갖 모듈들이 뒤죽박죽 섞여 지저분한 코드로 가득했습니다.

이러한 코드는 개발자 본인이 유지보수하기에도 복잡하고, 다른 개발자가 투입되면 분석하기가 어렵고 유지보수 하기에 정말 막막해질 것입니다.

profile
Slow and steady win the race

0개의 댓글