목록Backend (5)
미누에요
나는 프론트엔드를 베이스로 공부하고 있지만, 틈틈히 혼자서 모든 코드를 짜보고 싶다는 야망에 백엔드도 공부를 해가고 있다.(물론 백엔드만 진심으로 하는 사람들에 비해서는 굉장히 미미한 지식임은 분명하다.) 그렇게 서버 세팅도 해보며 docker compose라는 것을 사용해보았는데, 백엔드 친구들이 말하던 Docker와 내가 서버컴퓨터에서 사용한 Docker Compose는 도대체 어떤 차이점이 있는건지 궁금증을 가지게 되었다. Docker 우선, Docker는 컨테이너라는 독립적인 공간을 통해 애플리케이션과 인프라를 분리하여 소프트웨어를 관리하고 실행할 수 있도록 하는 플랫폼을 의미한다. 서버에서는 백엔드 개발을 한다고 했을 때, Spring, Mysql 등 여러가지 소프트웨어가 동작하게 되고, 이를 ..
현재 진행하고 있는 프로젝트에서 Google 로그인, Kakao 로그인이 필요하여 OAuth 2.0 을 사용하여 로그인 API를 구현하려 한다. 우선 Google OAuth 부터 설명해보자. OAuth란?"OAuth 또는 Open Authorization은 액세스 위임을 위한 개방형 표준 인가 프로토콜" 이라고 나와있다.쉽게 말해서, 우리가 해당 웹페이지에서 회원가입을 따로 하지 않고 "Google 로 로그인" 을 할 때 사용하는 방식이다. 사용자들은 따로 회원가입할 필요 없이 이미 존재하던 계정을 가지고 손쉽게 서비스를 사용할 수 있다. \이 OAuth를 사용해서 NestJS 환경에서 Google 로그인을 만들려면, Passport라는 기술을 사용해야한다. Passportpassport는 많이 사용되..
MVVM (Model - View - View Model)Model, View, View Model으로 구성 MVVM 패턴은 MVC와 비슷해 보이지만, 엄연히 다르다.Model, View, View Model로 나누어지며, Controller가 아닌 View Model이라는 것이 존재한다는 것이 특징이다. Model데이터를 담당 (DB에서 데이터를 가져오고 저장)비즈니스 로직도 담당DB 혹은 네트워크 같은 데이터와 상호작용하는 부분 ViewMVC 패턴의 View와 동일하게 화면을 보여주는 역할ViewModel과 데이터 바인딩을 통해 데이터를 받아 화면에 표시직접적인 비즈니스 로직을 처리하지 않음사용자의 입력에 따라 ViewModel 과 작용 View ModelModel과 View 간의 중개자 역..
MVC 패턴, 백엔드 개발자라면 아마 지겹도록 들었을 것이다.현재 프론트엔드 개발을 공부하고 있는데, React가 아닌 Flutter를 사용하여 개발하던 도중 디자인 패턴이 적용된 프로젝트를 하게 되어 많은 어려움을 겪었다.머리로 들어받으며 깨우친 디자인 패턴들에 대하여 정리하려 한다. MVC 패턴 (Model - View - Controller) MVC 패턴은 말 그대로 Model, View, Controller로 구성되어 있다. 각 구성 요소에 대하여 간략히 알아보자 Model어플리케이션의 핵심 데이터를 관리, 데이터와 관련된 비즈니스 로직 처리DB에서 데이터를 저장하거나 꺼내오는 역할을 수행Model은 DB와 연결된 부분이라고 생각해도 좋다. DB에 있는 데이터를 가져오는 것부터, 가져와서 가공..
디자인 패턴(Design Pattern)프로그램을 개발하다 보면 많은 문제점들이 발생한다. 이러한 반복적으로 발생되는 문제점을 해결하기 위해서는 많은 시간과 노력이 필요할 것이다.개발하면서 이러한 문제들을 최소화하고 수정하기 쉽도록 구조적으로 만든 패턴이 디자인 패턴이다. MVC도 여러 디자인 패턴의 종류 중 하나이다. MVC란 ?MVC는 각각 Model, View, Controller를 의미한다.애플리케이션 개발 시 사용하며, 개발 영역을 Model, View, Controller의 세가지로 나눈다고 하여 MVC라고 불린다.UI 패턴과 비즈니스 로직 영역이 구분되어 서로 영향을 주지 않아 개발과 유지보수를 용이하게 만들었다. Model - 데이터와 비즈니스 로직을 관리앱이 포함해야할 데이터가 무엇인지..