InhaBas / Inhabas.com-api

인하대학교 빅데이터 동아리 IBAS 웹앱, rest 개편 프로젝트 (2021.12.21~)
https://www.inhabas.com
9 stars 11 forks source link

[feature/#211] 동아리 활동 API 구현 #224

Closed whitem4rk closed 8 months ago

whitem4rk commented 8 months ago
  1. s3 filestorage 연결 [https://s3.console.aws.amazon.com/s3/buckets/inhabas-bucket?region=ap-northeast-2&bucketType=general&tab=objects]

  2. BaseEntity -> BaseBoard -> 특정 board 처럼 상속 받아서 처리함. DB는 BaseBoard로 모든 글의 공통 정보를 저장하는 baseboard table이 있고 특정 board 마다 table이 또 존재. baseboard를 사용하지 않고 각각의 board마다 별도의 연결되어있지 않은 table로 관리하려 했는데 이는 댓글 관리에서 너무 많은 중복코드를 유발합니다. 현재 게시판의 종류가 굉장히 많은 이 서비스에서 board마다 댓글 endpoint를 만든다면 최소 4(CRUD) * 10(게시판 최소 개수) 가 발생합니다. 모든 댓글 서비스는 동일한 로직으로 동작하므로 BaseBoard 하나만 참조해서 댓글을 불러 올 수 있도록 하였습니다. 다만 게시판 별로 요구 권한이 다르므로 이를 꼼꼼하게 처리할 필요가 있습니다.

  3. security config에서의 인가, 인증 규칙이 명확하지 않고 정리되어 있지 않다고 느낍니다. 추후에 수정이 필요해 보입니다.

여러가지 권한이 꼬여있는데 부족한 실력으로 설계를 하려고 하니 코드 가독성이나 구조의 깔끔성이 많이 떨어집니다. 개인적인 구두 설명 없이 코드만 읽고 이해하기에는 한계가 있으니 자유롭게 로직에 대한 설명을 요구하면 됩니다. 더 좋은 방안이 떠오르면 언제든지 제시해주시기 바랍니다.