[Go To Learn] 데이터 중심 애플리케이션 설계 - 1장


 | 해당 글은 Go to Learn 1기 공상현님께서 작성하신 후기이며, 허락하에 게시하였습니다.
원글 : https://velog.io/@codingsnom/DDIA-1
 
Go to Learn이란?
K-devcon에서 주최하는 멘토링 프로그래밍으로 각 분야에서 전문가이신 멘토분들의 멘토링을 통하여 약 2-3달간 진행하는 프로그램입니다.
Go to Learn 1기 같은 경우 Flutter, Back-end, Full-stack, Writing 등 여러가지 주제가 담긴 멘토링 프로그램이 있었습니다. 그 중 Back-end를 중심으로 진행하는 DDIA 프로그램 같은 경우 데이터 중심 애플리케이션 설계라는 책을 매주 1장 씩 정독하고 요약하면서 괸련된 이야기를 논의하면서 진행하고 있습니다.

K-devcon 이란? : IT 정보를 공유하거나 위에서 설명한 Go to Learn 스터디 및 밋업을 개최하는 활동을 하고있는 IT 커뮤니티입니다.
K-devcon 홈페이지 바로가기

1장 요약

데이터 중심 어플리케이션이란?
신뢰성 (Reilability)
확장성 (Scalability)
유지보수성 (Maintainability)

필자의 생각

1장을 읽어보면서 간단히 요약해보면 어플리케이션 개발 방식이 데이터 중심으로 설계 및 개발해나간다는 점을 설명해준 다음, 그 이후 위의 설계 방식에서 요하는 세가지를 소개하면서 각 요소들을 설명해주는 방식이었다.
데이터 중심으로 설계하는 방식을 위 장을 읽음으로써 처음 알았음에도 해당 방식을 설명해주는 용어가 익숙한 느낌을 받았었다. 또한 어플리케이션 개발을 진행하면서 데이터 중심으로 설계되었다는 느낌이 받지 못했었던 것 같았다. 해당 장에 따르면 시스템 추상화가 잘 되어있었기 때문에 위 두가지 현상이 나타날 수 있었다는 내용이 들어있었다.

데이터 중심 설계가 등장하게 된 계기 중 하나인 어플리케이션 요구사항이 점차 다양화 및 세분화 되어진다는 사실은 업무를 수행하면서 이러한 사항을 잘 알고 있었기 때문에 이러한 설계가 왜 도입이 되었는지 쉽게 이해 할 수 있었다.
아래의 내용들은 각 요소들을 읽으면서 떠오른 것들을 서술한 내용이다.

활동 후기

최근 위 책을 읽으면서 위의 내용 처럼 정리한 내용들을 논의해보는 스터디를 시작하였다.
필자 같은 경우 1장 초반에 나타내어있는 그림에서 어떠한 도구들이 데이터 중심 애플리케이션을 설계할 때 사용되는지를 주제로 질문을 드렸는데 인터페이스 추상을 이용하여 설계할 수 있다는 점을 다른 책(클린코드)를 인용하면서 답변을 받았었다.
또한 다른 분이 서술한 이야기를 들어보면서 나랑 비슷한 경험을 한 분도 있는 한편 다른 관점에서 설계 및 문제 해결을 수행한 이야기 등을 들을 수 있었던 시간이었다.