Q. 새해만 되면 새해 다짐을 하고 내일부터는 꼭 다이어트를 하겠다고 결심을 하는데 왜 맨날 실패할까?
A. 무작정 장대한 계획을 모호하게 세우기 때문!
나는 항상 뭔가 계획을 세우지만 나중엔 흐지부지되는 일이 많았다. 올해만 해도 제일 쓰기 간편한 다이어리를 골라서 다꾸는 바라지도 않으니 이제 내 인생을 조금씩 기록해보자고 마음 먹었건만 1월 한 달 열심히 쓰다가 2월부터 2달째 손도 대지 않고 있다. 그러니 나같은 사람들이 처음부터 그저 막연하고 거창한 계획을 세우기보다는 초단기로 목표를 설정해서 달성하는 것으로 작은 것부터 좋은 습관을 만들 수 있게 하면 어떨까?
마침 프로젝트 직전까지 Spring MVC로 MyBatis를 사용한 게시판 만들기까지는 배웠으니 배운 것도 활용해볼 수 있는 작심N일 사이트를 그렇게 만들어보기로 했다.
작심3일도 10번 하면 한 달이니까!
회원정보 | 게시판정보 |
사용 흐름: 회원가입 ➡ 로그인 ➡ 게시판 글쓰기 |
댓글 기능
다른 사용자들과 목표를 공유하고 서로 격려할 수 있는 분위기를 형성하고, 스스로 세운 목표를 이루어가는 과정을 인증하는 등의 용도로 댓글 기능을 추가했어야 하는데 시간에 쫓겨서 하지 못한 아쉬움이 있다. 게시판은 댓글 기능까지 있어야 진짜 완성했다고 할 수 있을 텐데 아무래도 게시판을 온전히 내 힘으로 만드는 건 처음이다 보니 3일 내내 게시판만 만들었다. 원래 주어진 기간도 겨우 3일뿐이었는데 내가 너무 욕심 부렸나...?
사실은 한 번 에러가 날 때면 원인을 찾지 못해서 몇 시간을 그냥 날리곤 했는데 어떤 변수 하나 오타가 나거나 링크를 잘못 걸었거나 하는 사소한 실수 때문이었던 적이 대부분이었다. 다른 사람이 보면 한 번에 찾아내던데. 이래서 페어프로그래밍 같은 게 필요한가 보다.
회원정보 기능
자신의 회원정보를 보거나 수정하는 기능도 아예 만들지 못했다. 모든 것을 게시판에 쏟아부었더니 정말이지 다른 기능에 신경 쓸 여력이 없었다. 추후에라도 추가해 봐야겠다.
SNS회원가입 및 로그인 API 기능
카카오톡이나 네이버 로그인 API를 끌어오고 싶었는데 시간이 없었다. 그리고 이 기능은 전에 Django로는 구현해봤지만 Spring으로는 해본 적이 없다보니 어떻게 하는지 방법 자체도 몰랐다. 하지만 구글링하면서 직접 찾아보면서 하려면 할 수 있었을 텐데. 또다시 시간 부족 탓이다.
게시판 CRUD 구현
우여곡절 끝에 어쨌든 혼자서 게시판 CRUD 기능 모두를 구현해냈고, 쿼리문이 복잡해져서 더 애먹었던 페이징 기능도 구현했다. 검색 기능을 부가적으로 넣은 것까지 하면 처음 게시판 만든 것치곤 일단 기본적인 것들은 해낸 것 같아서 뿌듯하다. 댓글 기능도 결국 게시판이랑 연결하는 것만 빼면 CRUD는 똑같으니까 해낼 수 있을 것 같다는 자신감이 생겼다.
깔끔한 디자인
CSS3으로 꾸민 게 전부이긴 하지만 내가 지향한 바는 이루어낸 것 같다. 너무 과하게 꾸미지도 않았고 색상 사용도 최대한 통일감을 주면서 괜찮게 한 것 같다. 물론 UI/UX 전공자분들이 보면 아닐 수 있겠지만 나로서는 만족한다.