책 6장 도메인 설계 전략과 7장 NULL 과의 싸움에 대해 스터디를 진행했다. 6장을 읽으면 나는 관계형 데이터 베이스를 이용해 도메인 설계를 할 수 있어야 한다. 그래서 내가 만들고 있는 사이드 프로젝트를 가지고 데이터 베이스 설계를 해보았고 이를 스터디에서 공유했다.
리액트를 공부하면서 셀프 시험을 볼 수 있는 웹앱을 만들고 있는데 이것만으로는 부족하다. 처음 시작으로는 질문과 답변을 등록할 수 있어 공부할 수 있게 만들려고 했는데 시험을 본다는 느낌이 안 들었다. 그래서 텍스트에 주요 키워드를 빈칸으로 만들고 채우는 앱으로 발전시키고 싶었다. 이 기능을 만들기 위해 관계형 모델을 모델링 했다.
처음에는 질문과 답변만 필요해서 이런 식으로 모델링 했었는데, 빈칸을 만들어야 하다 보니 추가적인 데이터가 필요했다. 기존에는 답이 단 1개였는데 이제 여러 개가 되었다.
이런 식으로 모델이 추가되었다. 근데 아래의 모델로는 아무것도 할 수 없다. 중복이 발생하기도 하고, 클라이언트에서 이러한 데이터를 가지고 빈칸을 만들 수가 없다. 응용프로그램이 데이터를 어떻게 사용할지를 많이 고민해야 한다는 것을 배웠다.
그래서 모델을 이런 식으로 더 추가했다. 빈칸의 위치인 column과 답을 만들었는데 column이 해당 답변에서는 식별할 수 있다고 생각하여 후보키라고 생각했었는데 스터디에서 토론을 통해 아니라는 것을 배웠다.
맹대표님이 위와 같이 모델링하는 과정을 보여주셨는데 경이로웠다.
자바스크립트로 직접 만들면서 배우는 - 자료구조와 알고리즘 강의 바로 가기
실습으로 마스터하는 OAuth 2.0: 기본부터 보안 위험까지 - OAuth 2.0 강의 바로 가기
기계인간 이종립, 소프트웨어 개발의 지혜 - Git 강의 바로 가기
코드숨에서 매주 스터디를 진행하고 있습니다. 메일을 등록하시면 새로운 스터디가 시작될 때 알려드릴게요!