2025/08/12 2

[Architecture] 클린 아키텍처와 앱 아키텍처(Google)

전부터 작성하려고 했는데 이제서야 작성하는 아키텍처 글....이번 글에서는 우선 전체적인 틀에 대해서 작성하려고 한다 1. 클린 아키텍처란? 필요성? 위의 그림을 굉장히 많이 보았을 텐데, 먼저 아키텍처에 대해서 이야기를 해보자면코드를 작성할때, 구조에 대해서 크게 신경쓰지 않아도 동작하는 프로그램을 만들 수 있지만 그렇게 한다면 점차 코드 개발이 힘들어지거나또는 유지보수하기 힘들어진다. 그렇게 되는 가장 큰 이유중 하나가 코드 서로가 서로에게 큰 영향을 주기 때문인데,예를 들어서 A코드를 동작하는데 B코드가 사용되고 필요하다면 B코드를 수정하면 자연스럽게 A코드의 수정이 필요한 경우가 많다.이는 어쩔 수 없는 현상이지만 A코드를 동작할때, B,C,D..... 코드가 모두 사용된다고 하면, 굉장히 복잡하..

개발/아키텍처 2025.08.12

[Architecture] 데이터 모델과 아키텍처

우리가 개발을 하다보면 굉장히 짜증나고 위험한 문제 중 하나는 연쇄적인 코드의 수정일 것이다.이를 방지하기 위해서 우리는 아키텍처를 사용한다. 그런데 이렇게 아키텍처를 구상하고 나름 잘 짜고 있다고 생각했는데.... 연쇄적인 코드의 수정이 필요한 이유 중 하나가 데이터 모델이 수정되니깐 다 수정해야하네... 이라면 꼭 이 글을 읽어보길 바란다. 우리가 아키텍처를 구성하는데 중요하게 보는것 중 하나는 관심사 분리이다.클린 아키텍처의 경우 동심원 안쪽으로 들어갈 때, 자신의 안쪽에 있는 하나의 레이어에만 의존해야한다. 여기서 우리는 주목해야하는 점이 있다. 그것은 바로 데이터 모델은 왜 여기에 포함하지 않는가 이다. 처음 프로젝트에 들어가고 코드를 작성하다보면 흔히 하는 실수중 하나이다(적어도 나는 그랬었다..

개발/아키텍처 2025.08.12