본문 바로가기

공부/TIL

24.01.05

우선 오늘 기술 면접 대비 답변을 적어보자!

 

[RDBMS와 NoSQL의 차이]

 

RDBMS는 관계형 데이터 베이스로서 복잡한 관계의 데이터를 다룰 때 이점이 있다. 또한 정해진 스키마에 맞게 데이터를 넣어야 한다. 반면 NoSQL은 스키마가 고정되어 있지 않다. 따라서 유연하게 데이터를 저장할 수 있다. 따라서 대용량 데이터를 사용하는데 이점이 있다. RDBMS의 특징은 고정된 스키마를 사용하고, 테이블간 조인을 하여 관계를 맺을 수 있다. 또한 트랜잭션을 걸수 있어 데이터의 정합성을 지킬 수 있다. 데이터베이스는 수직적 확장이 쉽다. 
NoSQL의 특징은 스키마를 동적으로 변할 수 있어 다양한 데이터를 처리하는데 적합하다. 하지만 데이터의 중복이 있을 수 있고, 이때문에 데이터를 수정하려면 모든 컬렉션을 조회해야 하는 단점이 있다. 따라서 변경이 적지만 자주 조회되는 데이터들을 사용할 때 이점이 있다.

 

[MVC에 대해]

MVC는 디자인 패턴 중 하나로서 모델, 뷰, 컨트롤러로 이루어져 있다. 첫번째로 모델은 비즈니스 로직이 포함되어 있다. 컨트롤러로부터 받아온 데이터를 이용해 데이터를 저장/수정/삭제를 하고, 비즈니스 로직을 돌려 다시 컨트롤러에 전달할 때도 있다. 뷰는 사용자와 상호작용을 하며 데이터를 보여주고, 사용자의 데이터에 맞게 컨트롤러로 데이터를 전달해준다. 컨트롤러는 뷰와 모델 사이의 징검다리 역할이다. 사용자의 요청에 맞는 모델을 찾아서 데이터를 넘겨주고, 모델에서 넘겨온 데이터를 알맞는 뷰로 데이터로 넘겨주는 역할을 한다. 각 계층간 의존성이 적기 때문에 유지/보수에 유리한 이점을 갖는다.

 

우선 모범답안이 오진 않았지만 좀 더 다듬어야 할 필요는 있을 것 같다. 

우선 오늘 오전엔 정말 멘붕이였다. 우선 프론트를 만들어야 뭐가 나올 것 같아서 프론트엔드를 한번 만져보기로 했다. 챗지피티를 활용해서 프론트를 만들고, 만들어진 프론트를 튜터님꼐 가져가서 이게 어떻게 작동하는지 내가 이해한 것이 맞는지 여쭤봤다. 튜터님은 타임리프를 사용하는게 좋다고 하셨지만, 경남님은 Vue.js를 이용해서 프론트를 구성하셨다. 나는 정말 도울 게 없어 무력감이 참 많이 들었던 하루.. ㅠ 하지만 오후쯤 매니저님이 이번주는 일단 프론트는 빼자! 하셨다.

나같은 사람들이 정말 많았나보다. 일단 마음을 덜었다. 그렇다면 내가 해야할건? 스포티파이Open API를 이용해보는 것! 드디어 RestTemplate을 사용할 때가 왔다! 이 RestTemplate을 잘 사용하고, 테스트코드도 잘 짜면서 진행 해봐야지!

'공부 > TIL' 카테고리의 다른 글

24.01.08  (0) 2024.01.08
24.01.06  (0) 2024.01.06
24.01.04  (1) 2024.01.04
24.01.03  (0) 2024.01.03
24.01.02  (1) 2024.01.02