프로젝트 회고

내일배움캠프 5일차 TIL : 미니 프로젝트 회고, 잘 한 것과 아쉬운 것들

Veams 2022. 11. 18.

 

 

 

# 발표에서 피드백을 받고 개선 예정인 기능

- 방명록과 가입신청 페이지의 게시글의 CRUD 기능 개선(특정 게시글의 수정, 비밀번호 추가, object의 고유값 수정)

- 가입신청서 작성시 가입대기 상태 / 가입 완료의 구분

- 가입신청서 페이지의 톤앤매너 변화. (검정 바탕에 흰 박스 상태에서 톤 앤 매너 맞추기)

- 가입신청서에서 직업을 선택하지 않아도 등록이 되므로, 직업을 꼭 선택하도록 알림창 띄우기

- alert 알림 대신, 모달창으로 변화

우리 팀의 미니프로젝트

 

우리 조의 미니 프로젝트 결과보고 (팀장님 블로그)

https://velog.io/@today3233/221118-DAY5-미니프로젝트1-결과-보고

 

 

 

 

@ 뿌듯했던 경험

1) 기초강의에서 배운 것을 중심으로, 기본적인 기능들은 직접 다 구현함.

- API 연결을 통한, 방명록 등록post, 조회get / gitbash, AWS와 filezilla를 통한 도메인 연결

- 팀원들의 작업 내용을 모두 모아, 도메인에 연결하고나서 다시 살펴보니 보람이 아주 컸다.

2) 기초 강좌에서 배우지 않았던 게시글 개별 삭제기능post을 연구하여 구현하였음.

3) 개발학습의 재미를 느끼고, 몰입하는 방법을 알게됨. 

 

- 개발자에게는 a) 문제 정의 혹은 구현 기능의 목표 설정 -> b) 기능 연구 및 코드 작성 -> c) 구현 및 일부 오류 발견 - d) 오류 탐색 -> e) 문제해결로 연달아 이어지는 과정이 있다고 생각한다. 이 과정을 경험하면서 반복적으로 느낄 수 있는 뿌듯함이 정말 크다.

 

대개 '왜 기능이 작동하지 않지?' 라는 질문에 답을 찾으면서 시간과 에너지를 상당히 쏟는데,

의도했던 기능이 정상 작동하는 결과를

문제해결 주체가 몸소 체험할 수 있는 것이 개발 분야의 장점이 아닐까 생각한다.

 

- 웹개발자는 내가 이전에 종사했던 심리상담 및 교육 분야에 비해 문제해결을 통해 변화 혹은 기쁨을 느끼는 기간(cycle)이 좀 더 짧지 않나 싶다. 동네 공터에서 다세대 빌라 한채가 올라가는데도 최소 4개월 정도가 걸리는 거 같은데... 

 

그렇게 구현한 웹서비스를 사용자들이 사용하게 만들고, 서비스의 성장을 이끄는 것은 또 다른 이슈이긴 하지만....아직 학습자 상태인 내 입장에서는 개발 분야가 단점보다는 장점이 많이 보인다.

@ 추후 학습하려는 부분

1) 게시글 별로 비밀번호도(아이디) 입력 받고 삭제 및 수정하는 기능.

- 다른 프로젝트 팀에서는 게시물에 비밀번호도 구현했다. 해당 팀에는 전직 웹퍼블리셔 및 개발경험자가 있었다고는 하는데.. 이번에 우리 팀이 구현한 방명록은 비밀번호 설정에 따른 삭제 기능이 없어서, 웹페이지에 접근한 어떤 사람이든지 삭제 버튼 하나로 게시글 삭제가 가능했다. 그래서 실수로 다른 어떤 사람이 삭제해서 미안하다고 한적도 있었다.

2) 게시글의 상태 변환

- 버킷리스트(or To-do list) 기능을 응용하기. (ex가입신청서 작성 후 대기상태--> 가입신청 완료처리)

좌측은 팀과 함께 구현한 웹페이지, 우측은 내가 연습하면서 만든 웹페이지

3) Like 좋아요 혹은 dislike싫어요 기능.

- 게시글 혹은 특정 페이지 컨텐츠에 대하여 좋아요 버튼을 누르면, 카운트가 올라가고, 그것이 저장된 상태로 남는 기능.

- 유저마다 좋아요를 누를 수 있는 횟수를 1회로 제한하려면, 회원가입 기능이 있어야 하지 않나 싶다.

 

4) 회원가입 기능

- 오픈 API를 활용한 네이버 및 카카오 회원가입 기능.

 

5) 프론트 CSS, HTML 활용도 계속 배워야. 

팀원 중에 스타벅스 홈페이지의 클론 코딩 강좌를 구입하여 학습하셨던 분도 있었는데,

이번에 그 분께서 프론트 역할을 담당하면서 이번 프로젝트에서 응용을 하시는 것을 보았다.

프론트도 학습을 빼먹지 말아야 겠음.

- 핵심적인 다른 페이지에 비하여 약간은 소외당한듯한 '가입신청 페이지'의 경우, 프론트 부분까지 내가 담당해보겠다고 나섰으면 배울 수 있는 게 많았을 것 같은데, 그러질 않아서 아쉽다.

타 팀원이 구현한 기능. 각 카드에 마우스를 가져다대면, 카드가 백-플립하여 뒷면이 보인다. (html, css로 구현)

 

@ 프로젝트 하면서 아쉬운 부분

1) 기술적인 부분 :

- API 작성시 underbar '_' 를 사용하면 안 된되는 암묵적인 룰이 있다고 한다. 그것을 알지 못하여 그냥 사용했는데, 앞으로는 사용을 피할 것이다.

- 팀 프로젝트 발표회를 오늘 진행했는데, 튜터님께서 공통적으로 피드백 주신 부분이 있었다. 방명록 게시글 작성시, 댓글을 수정하거나 삭제할 때 고유값을 어떻게 지정할 것인가?의 이슈가 있었다.

 

우리팀은 row, length를 활용하여 count 를 하는 방식을 사용하였다. 하지만 이 경우, 게시글 작성 및 삭제를 반복할 경우, 나중에 다른 게시글도 원치 않게 삭제가 될 수 있다고 한다.

 

그래서 DB마다 고유값을 어떻게 줄 것인가에 대해 고민이 필요하다고 하였다. 지금 이 문제제기가 명확히 어떤 것인지 파악은 하지 못하였는데, 어떤 팀은 게시글 작성 시간을 고유값으로 보고 삭제를 하였는데, 그런 방식도 좋은 아이디어라고 하셨으니, 참고가 될 것 같다.     

 

2) 추가로 구현하지 못했던 기능들

예를 들어 구현해놓은 글 작성 기능을 토대로

길드 가입 신청을 받아주면 가입신청 대기 상태와

가입신청 완료 상태를 구분 해놓고 싶었는데,

그렇게 하질 못했다.

 

또 프로젝트 막바지 시점에는 '좋아요' 기능도 추가할 수 있을 것 같았는데,

그 기능을 생각했을 때는 프로젝트 마감기한이 다가와서 엄두를 내질 못했다.

 

그렇게 하지 못한 주요한 이유는, 

프로젝트 초기부터 팀원과 그렇게 내가 학습을 통해 얻으려는 목표에 대해서 상상하고,

그것을 분명하게 공유하지 못해서 그랬던 게 아닐까.

또는 지금 스스로 강좌를 통해 학습 것에 대해서 믿음이 없었기 때문은 아니였을까.

 

 

댓글