Project/multiplexShop

[3주차] 고객 지원 게시판 개발 완료 후 회고..

kkkkkdddddhhhhh 2023. 9. 11. 00:09

우여 곡절끝에 댓글 기능까지 추가해 게시판의 모습을 갖추게 되었다.

 

댓글 기능을 추가하며 느낀점은 댓글 또한 댓 '글'  이라는점..다만 댓글을 화면에서 처리할 때 AJAX를 이용해 비동기방식으로 댓글이 바로 화면에 나타나야됬기 때문에 익숙치못한 자바스크립트에서 많은 오류를 만났다.

 

가장 어려웠던 부분은 댓글 수정이였다. 

 

타임리프 문법과 자바스크립트 문법이 짬뽕된

fetch API를 사용하여 댓글 화면을 가져오면서 어떻게 DOM을 조작할지 막막했다. 

실제로 화면상에서 댓글이 불려지고 불려진 댓글에서 수정버튼을 눌러도 addEventListener가 반응하지않아 지금 뭔가 많이 잘못되가고있는건가 불안해졌지만 

document.addEventListener와 e.target을 이용해 안정적으로 API 호출이 가능해졌다.


2주차까지 고민하던것들...

1. 등록 생성 템플릿 뷰를 통합할지, 분리할지에 대해서..

 

 혼자서 이미 게시판 등록,수정외에는 템플릿뷰를 분리하기로 저번 주말에 결론짓긴했는데 오늘 팀원과 확실하게 토의해 그렇게 하기로했다.

아무래도 유효성 검증과 예외처리에서 템플릿뷰를 하나로 갈 경우 화면에 들어갈 코드가 너무 지저분질거라고 서로 생각하고 있었다.

 

 

2.팀 프로젝트의 구조에 관한 이야기

 저번주부터 프로젝트의 전체적인 구조가 맘에들지 않았다. 특히 내가 프로젝트를 설계하긴했는데 이게 어떠한 아키텍처고 어떠한 패키지 구조를 가지는지에대해 특별하게 고민하지않고 프로젝트를 시작했기에 이 사단이 난거같다.

 

뒤늦게 계층형 아키텍처에 대해 공부를 하며 아키텍처뿐 아니라 아키텍처의 중요성도 알게됬다.

좋은 코드, 기능이 있기위해서는 좋은 구조가 뒷받침되어야 한다는 사실 

 

우리 프로젝트의 도메인 기반 패키지 구조

 

처음 계층형 아키텍처에 대해 공부하다 우리 프로젝트의 구조를 보고 너무 달랐기에 뭔가 크게 잘못된줄알았다.

(잘 알지도 못하고 구조를 설계해서 잘못된 구조로 착각했다... 많이 반성하게되는 부분)

 

우리 프로젝트의 패키지 구조는 기능(도메인) 기반의 패키지 구조였고 

나름의 장단점이 있는 구조로 ,

장점으로 도메인별 패키지 구성을 했기에 패키지내 객체간의 응집도가 높고 또 패키지를 도메인별로 나눠놨기에 확장성이 좋다는점이 있다.

단점으로는 전체적인 흐름 파악이 어렵고 도메인별로 패키지를 나눠놨기에 공통 적으로 들어가는 처리를 어느 도메인 패키지에서 개발해야할지의 어려움 등이 있었다. 

 

계층형 패키지 구조와 도메인형 패키지 구조

다시 프로젝트 설계를 진행하던 그 때로 돌아간다면 계층형 패키지구조를 선택할거같다.

처음 웹개발 프로젝트를 진행하는 취업준비생들의 프로젝트로 많은 도메인이 필요할거같지않고 

계층형 아키텍처의 흐름을 패키지 구조로 쉽게 이해할 수 있다는점에서 지금 나의 수준에서는 계층형 패키지 구조로 프로젝트를 설계하는것이 맞다고 생각한다.

 

팀원과 오늘 얘기하면서도 같은 의견으로 모아졌다. 

나중에 개인 프로젝트를 진행한다면 계층형 패키지구조로 진행하는것이 좋지않을까? 하며

 

전반적으로 3주차를 마무리하면서 부족한 지식과 부족한 고민에대해 많이 반성을 하게됬다.