이번 개인 프로젝트에서는 React, Node.js, MongoDB를 사용하여 기본적인 기능을 갖춘 블로그 애플리케이션을 개발했다. 처음에는 간단한 게시판 정도로 시작할 계획이었지만, 점점 사용자 인증, 회원 관리 등 기능을 추가하며 프로젝트를 확장하게 되었다.
나만의 커스텀 블로그를 만들겠어! 라고 다짐하며 만들기 시작했지만 생각보다 쉽지 않았고 결국 현존하는 블로그들을 존경하게 되었다. 하지만 복잡한 구조는 아니라 생각되므로 시간이 좀 더 많이 주어진다면 완성할 수 있을것 같다.
블로그를 만들기로 결심하고 처음에는 어떤 기술 스택을 사용할지 고민했고, 결국 평소에 하고싶었던 기술인 React와 Node.js, MongoDB를 사용했다.
React는 컴포넌트 기반 구조와 상태 관리 기능이 직관적이고, Node.js는 express를 이용한 빠른 개발을 지원 가능하다고 공부했다. NoSQL 데이터베이스도 유연하게 데이터를 저장하고 처리할 수 있다고 해서 이들로 정했다.
특히 어려웠던 점이 글수정이었다.$.cookie("login_id")로, 이는 사용자가 로그인한 후 서버에서 받은 로그인 ID를 쿠키에 저장하고 이를 사용하여 서버와 요청을 보낼 때 사용자를 인증하는 용도로 사용되었다.
처음에 게시글의 아이디값을 제대로 가져오지 못해 글 수정을 해야 하는데 사용자가 인증되지 않아 작동이 되지 않았다. 결국 jquery를 추가했고 씨름끝에 해결했다.
전체적인 웹 애플리케이션 아키텍처에 대해 더 잘 이해하게 되었다.
클라이언트는 사용자 인터페이스를 제공하고, 서버에 요청을 보내며, 서버로부터 받은 응답을 화면에 표시한다.
서버는 데이터베이스와의 상호작용을 담당하며, 클라이언트의 요청에 따라 회원과 게시물 관련 처리를 수행한다.
클라이언트와 서버 간의 통신을 설계하고, 상태 관리와 데이터 처리의 중요성을 깨달아 프론트엔드와 백엔드 간의 상호작용과 데이터베이스 관리에 대한 이해를 쌓았다.
앞으로 더 많은 프로젝트를 통해 경험을 쌓고, 개선할 부분을 찾아 더욱 완성도 높은 웹 애플리케이션을 만들고 싶다.