architecture 3

Clean-architecture 계층 Use Case layer

프로그램에서 가장 중요한 영역 use case1. 어떤 내용이 들어갈까?use case 계층은 프로그램(프로젝트) 혹은 앱에 있어 가장 중요한 부분이다.비즈니스 룰이 바로 이 계층에 들어간다.사용하는 진짜 데이터를 가공하는 부분이 비즈니스 룰의 역할이다. 예를 들어 사용자 로그인, 특정필터를 사용한 검색수행 그리고 은행의 트랜잭션 작업이 이에 해당한다.※ 비즈니스 룰이란 시스템의 가장 코어한 부분의 내용이다 2. User Case계층의 특징이 계층은 최대한 작으면 작을수록 좋다.작은 기능을 하나씩 고립 시키는 것(수정하거나 고칠때 이부분만 고치면 된다는 의미다.)작은 기능 하나씩 독립적으로 만들어 테스트하기 좋고 유지보수하기 좋게 만들어야한다.use case를 통해 entities에 접근할수 있어야 하며..

architecture 2024.04.29

Clean-architecture 계층 entities layer

clean architecture의 가장 안쪽의 있는 계층Entities layer에 대해 정리한다. 1. 어떤 내용이 들어갈까?이 계층은 도메인 모델의 구현체가 들어가게 된다.간단히 말하자면 앱을 만들때 상호작용하는 특정한 구현체들이 들어간다 보면된다. ※ 단, String 같은 파이썬에서 전반적이고 일반적인 사용되는 모델이 들어가는게 아니라, 앱 기준으로 특징을 기준으로 고립시켜 사용할 모델을 넣는다.ex) 예약 플랫폼에서 delux Room, suite room  책 clean-architectures-in-python에서는 다음과 같이 말하고 있다.If your project was a tool to analyse medieval manuscripts, however, you might need ..

architecture 2024.04.29

클린 아키텍쳐 파이썬- django

Clean- Architecture란 무엇일까?  clean- architecture가 2021년 유럽 장고콘에서 다뤼졌다.기존의 django 구조에는 어떤 문제가 있었길래 이런 clean architecture가 소개 된걸까? 기존 Django Architecture의 문제점은?※ 비즈니스 로직을 어디에 두어야 할까?Views → 읽기 힘들다, 다시쓰기 힘들다Models → 모델의 dependency를 너무 복잡하게 생성한다. (즉, 수정하기 힘들다 능동적 db대응 힘듬)Forms → 이건 UI에 묶여있는 로직이라 불가하다- 위의 모든 파트는 unit test하기 힘들고 share하기도 힘들다. 해결책은 무엇일까?특정한 layer에 고립된 비즈니스 로직을 만들자이런 layer들을 use cases la..

architecture 2024.04.25