-
Notifications
You must be signed in to change notification settings - Fork 0
feat: 전면 리팩토링 및 아키텍처 개선 #36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Documentation: - IMAGE_MANAGEMENT.md 신규 생성 (400+ 라인) - S3 Presigned URL 기반 이미지 업로드 아키텍처 상세 설명 - 3단계 업로드 프로세스 시퀀스 다이어그램 포함 - 데이터베이스 스키마 및 인덱스 전략 문서화 Features: - API 명세 완전 정의 (5개 엔드포인트) - 보안 고려사항 및 업로드 제한 정책 상세 기술 - 테스트 전략 및 Testcontainers + LocalStack 연동 가이드 - 프론트엔드 통합 예제 (Thymeleaf 프래그먼트 포함) Architecture: - 헥사고날 아키텍처 기반 이미지 관리 시스템 설명 - 성능 최적화 전략 (서버 부하 최소화, CDN 연동) - Flyway 마이그레이션 및 향후 개선 계획 포함 - README.md에 이미지 관리 문서 링크 추가
Documentation: - IMAGE_MANAGEMENT.md에서 ASCII 아트를 Mermaid 시퀀스 다이어그램으로 교체 - 전체 플로우 통합 다이어그램 추가로 3단계 프로세스 한눈에 파악 가능 - activate/deactivate 블록으로 컴포넌트 활성 상태 명확화 - 참가자별 역할과 상호작용을 더 직관적으로 표현 Visual Improvements: - 일관된 들여쓰기와 코드 포맷 적용 - SQL 스키마 정의 가독성 개선 - HTML 코드 스니펫 정렬 및 포맷 개선 - README.md 문서 링크 형식 통일화 Features: - GitHub에서 바로 렌더링 가능한 다이어그램으로 문서 가독성 향상 - 개발자가 시스템 플로우를 더 쉽게 이해할 수 있도록 지원 - 기술 문서의 전문성과 유지보수성 강화
Frontend: - index.html에서 정적 프로필 정보를 HTMX 동적 로딩으로 변경 - member-profile 프래그먼트 신규 생성 및 분리 - 페이지 로딩 시 필요한 데이터만 비동기적으로 조회 Backend: - MemberView.getMemberProfileFragment() 메서드 추가 - HomeView에서 불필요한 모델 데이터 제거로 성능 개선 - 프래그먼트 기반의 모듈화된 UI 구조 적용 Performance: - 초기 페이지 로딩 속도 향상 - 불필요한 데이터 조회 방지로 서버 부하 감소 - HTMX를 통한 부분적인 콘텐츠 업데이트 지원
Frontend: - index.html에 HTMX 로딩 인디케이터 추가로 사용자 경험 향상 - sidebar.html 프래그먼트를 member/fragments/로 이동으로 구조 개선 - 추천 푸디 목록 동적 로딩을 위한 HTMX 속성 강화 Backend: - HomeView에서 불필요한 의존성 제거로 클래스 단순화 - 포스트 목록, 추천 사용자, 팔로우 상태 조회 로직 제거 - 초기 페이지 로딩 속도 대폭 개선 (데이터 조회 0건으로 감소) Tests: - TestcontainersConfiguration에 CORS 헤더 설정 추가 - 테스트 환경에서의 안정적인 S3 연동 지원 Performance: - 홈페이지 초기 로딩 시 필요한 데이터만 조회 - HTMX 비동기 로딩으로 페이지 응답 속도 향상 - 서버 부하 감소 및 리소스 사용 최적화
Frontend: - post/my-list.html 신규 생성 (300+ 라인) - HTMX 기반의 탭형 내비게이션 시스템 구현 - 동적 컨텐츠 로딩을 위한 인디케이터 및 컨테이너 추가 - 프로필 정보와 게시글 목록 통합 UI 제공 Backend: - PostView에 상세한 KDoc 문서화 추가 - readMyPosts() 메서드로 내 게시글 목록 페이지 구현 - readMemberPostsFragment()로 비동기 프래그먼트 조회 지원 - 불필요한 MemberReader 의존성 제거로 성능 개선 Architecture: - PostUrls에 READ_MEMBER_POSTS_FRAGMENT 상수 추가 - PostViews 경로 일관성 개선 (fragments/ 디렉토리 구조) - posts-content.html에서 authorId 기반 권한 체크 개선 - 모듈화된 프래그먼트 구조로 유지보수성 향상 Features: - Posts, Collections, Following, Friends 탭 기반 내비게이션 - 비동기 콘텐츠 로딩으로 페이지 전환 없는 UX - 반응형 프로필 정보와 통합된 게시글 관리 - 권한에 따른 동적 UI 요소 표시
Architecture: - PostView를 PostCreationView, PostReadView, PostUpdateView로 분리 - 각 뷰 컨트롤러가 단일 책임만 가지도록 설계 개선 - 의존성 분리로 불필요한 결합도 제거 및 테스트 용이성 향상 Forms: - PostCreateForm, PostEditForm을 form 패키지로 이동 - 폼 클래스의 독립성 강화 및 재사용성 개선 - PostCreateFormTest에 400+ 라인의 상세한 검증 테스트 추가 Security: - S3PresignedUrlGenerator에서 민감정보 로깅 제거 - 보안 강화를 위해 이미지 키 정보 로그 삭제 - 개인정보 유출 가능성 최소화 Imports: - 모든 PostCreateForm, PostEditForm import 경로 업데이트 - HomeView, MemberView 등 관련 클래스 import 수정 - 일관된 패키지 구조로 코드 가독성 향상 Benefits: - 단일 책임 원칙 준수로 유지보수성 대폭 향상 - 각 기능별 독립적인 테스트 및 개발 가능 - 클린 아키텍처 원칙에 따른 레이어 분리 강화
API Simplification:
- FriendRequestor 인터페이스를 단순화하여 Command 객체 제거
- sendFriendRequest(fromMemberId, toMemberId) 직접 호출 방식으로 변경
- 불필요한 Command 생성 및 관리 부담 감소
Dynamic Button Enhancement:
- 친구 버튼을 HTMX 동적 로딩 방식으로 개선
- /friendships/button/{authorId} 엔드포인트 추가로 실시간 상태 조회
- 프로필 페이지 로딩 시점에 친구 관계 상태 동적 표시
Repository Extension:
- FriendshipRepository에 existsByRelationShipMemberIdAndRelationShipFriendMemberIdAndStatus 메서드 추가
- PENDING 상태 친구 요청 존재 여부 효율적 확인
- 데이터베이스 조회 성능 최적화
Service Layer Updates:
- FriendshipReadService에 isSent() 메서드 추가
- 친구 요청 발송 상태 확인 기능 강화
- 비즈니스 로직 계층에서 상태 관리 개선
Template Improvements:
- friend-button-new.html 프래그먼트로 교체 및 개선
- member/profile.html에서 HTMX 동적 로딩 적용
- 사용자 경험(UX) 향상을 위한 실시간 상태 표시
Test Refactoring:
- 모든 테스트에서 FriendRequestCommand 사용 제거
- 단순화된 API 호출 방식으로 테스트 코드 개선
- 100+ 라인의 테스트 코드 단순화 및 가독성 향상
Benefits:
- API 사용 편의성 대폭 향상
- 불필요한 객체 생성 오버헤드 제거
- 동적 UI 업데이트로 사용자 경험 개선
- 테스트 코드 유지보수성 강화
Fragment Architecture: - 팔로우 버튼을 create-button, terminate-button 프래그먼트로 분리 - follow-button.html에서 조건부 프래그먼트 포함 방식으로 개선 - 재사용 가능한 컴포넌트 구조로 UI 일관성 강화 View Controller Enhancement: - FollowView를 FollowReadView로 리네이밍 및 역할 명확화 - FollowCreateView, FollowTerminateView에서 ResponseEntity 대신 Model 반환 - HTMX 프래그먼트 기반 동적 UI 업데이트 방식으로 전환 Template Optimization: - member/profile.html에서 팔로우 버튼 동적 로딩 적용 - hx-trigger="load"로 페이지 로딩 시점에 실시간 상태 표시 - 정적 HTML 대신 동적 프래그먼트로 사용자 경험 개선 URL Structure: - FollowUrls에 팔로우 버튼 관련 엔드포인트 추가 준비 - 일관된 URL 패턴으로 API 구조 개선 - 향후 동적 버튼 로딩 기반 확장성 확보 Code Quality: - 불필요한 @responsebody 제거 및 View 렌더링 방식으로 변경 - 하드코딩된 HTML 문자열 대신 Thymeleaf 템플릿 사용 - MVC 패턴 준수로 코드 유지보수성 향상 Benefits: - 재사용 가능한 프래그먼트로 코드 중복 제거 - 동적 UI 업데이트로 실시간 상태 반영 - 일관된 아키텍처 패턴으로 개발 생산성 향상 - 템플릿 기반 렌더링으로 유지보수성 강화
Domain Enhancement: - Member 도메인에 postCount 필드 추가로 게시글 수 집계 관리 - 모든 Member 팩토리 메서드에 postCount 초기화 로직 추가 - 도메인 레벨에서 데이터 일관성 보장 및 성능 최적화 기반 마련 Profile Optimization: - MemberView에서 불필요한 의존성 제거 (FriendshipReader, PostReader) - 프로필 조회 시 팔로우/친구 관계 확인 로직 제거로 단순화 - 동적 버튼 로딩 방식으로 전환하여 페이지 로딩 성능 개선 Template Simplification: - member-profile.html에서 followStats 대신 직접 필드 사용 - followersCount, followingCount, postCount 직접 바인딩으로 복잡성 감소 - 템플릿 구조 단순화로 유지보수성 향상 Code Refactoring: - addMemberInfo, addMemberStats 프라이빗 메서드 제거 - 단일 책임 원칙에 따라 MemberView 역할 명확화 - 불필요한 데이터 조회 및 모델 설정 로직 제거 Test Update: - MemberTest의 TestMember에 postCount 필드 추가 - 도메인 객체 테스트 커버리지 유지 Benefits: - 데이터베이스 조회 쿼리 감소로 성능 향상 - 동적 UI 로딩으로 사용자 경험 개선 - 도메인 모델 완전성 강화 - 코드 복잡성 감소 및 유지보수성 증대
DTO Enhancement: - SuggestedMembersResult DTO 생성으로 추천 회원과 팔로잉 상태 묶어서 반환 - suggestedUsers와 followingIds를 포함하는 응집력 있는 데이터 구조 제공 - API 응답의 일관성 및 타입 안전성 강화 Service Layer Extension: - MemberReader 인터페이스에 findSuggestedMembersWithFollowStatus 메서드 추가 - MemberReadService에서 추천 회원 조회와 팔로잉 상태 확인 로직 통합 - 단일 쿼리로 관련 데이터 모두 조회로 성능 최적화 Controller Simplification: - MemberView에서 불필요한 FollowReader 의존성 제거 - 복잡한 조회 로직을 서비스 계층으로 이동으로 책임 분리 - 코드 가독성 향상 및 유지보수성 강화 Performance Improvement: - 여러 번의 데이터베이스 호출을 단일 호출로 통합 - 추천 회원 목록과 팔로잉 상태를 한 번에 조회로 네트워크 오버헤드 감소 - 사이드바 로딩 성능 개선로 사용자 경험 향상 Code Quality: - 단일 책임 원칙 준수로 컨트롤러 역할 명확화 - 데이터 전송 객체 사용으로 계층 간 결합도 감소 - 응집력 있는 API 설계로 확장성 확보 Benefits: - API 응답 시간 단축 및 서버 리소스 사용량 감소 - 클라이언트 코드 단순화로 개발 생산성 향상 - 일관된 데이터 구조로 프론트엔드-백엔드 협업 용이성 증대
Controller Separation: - MemberView를 4개의 전문화된 컨트롤러로 분리 (MemberAuthView, MemberProfileView, MemberSettingsView, MemberFragmentView) - MemberAuthView: 인증 및 비밀번호 재설정 기능 전담 - MemberProfileView: 회원 프로필 조회 기능 전담 - MemberSettingsView: 회원 설정 및 계정 관리 기능 전담 - MemberFragmentView: 동적 프래그먼트 로딩 기능 전담 Package Structure Enhancement: - form 패키지 생성으로 폼 클래스 체계적 관리 (AccountUpdateForm, PasswordResetForm, PasswordUpdateForm) - validator 패키지 생성으로 검증 로직 분리 (PasswordUpdateFormValidator) - converter 패키지 생성으로 데이터 변환 로직 모듈화 (StringToEmailConverter) - util 패키지 생성으로 공통 유틸리티 함수 분리 (BindingResultUtils, MemberUtils) - message 패키지 생성으로 메시지 상수 관리 체계화 Code Organization: - 각 컨트롤러가 단일 책임만 가지도록 역할 명확화 - 관련 기능별로 의존성 분리로 결합도 감소 - 불필요한 의존성 제거로 코드 가독성 향상 Test Structure: - 컨트롤러 분리에 따른 테스트 클래스도 분리 (MemberAuthViewTest, MemberProfileViewTest 등) - 테스트 커버리지 유지 및 유지보수성 강화 Exception Handling: - 예외 클래스 패키지 구조 개선 및 일관성 확보 - 관련 예외들 그룹화로 관리 용이성 증대 Benefits: - 단일 책임 원칙 준수로 코드 유지보수성 대폭 향상 - 기능별 분리로 팀 협업 효율성 증대 - 패키지 구조 체계화로 프로젝트 확장성 강화 - 테스트 단위 세분화로 품질 관리 용이성 증대
Backend: - CustomAuthenticationProvider와 MemberPrincipal 구조 개선 - MemberUpdateService와 MemberVerifyService 분리로 단일 책임 원칙 적용 - AccountUpdateRequest와 AccountUpdateForm 검증 로직 강화 - Member 도메인 모델에 MemberDetail 통합으로 응집성 향상 Frontend: - 회원 설정 페이지(member/setting.html) UI/UX 개선 - 프로필 페이지(member/profile.html) 동적 업데이트 기능 추가 - Thymeleaf 프래그먼트 기반 멤버 프로필 컴포넌트화 - 게시글 목록 페이지(post/my-list.html) 권한 체크 로직 보강 Test: - MemberPrincipalTest 테스트 케이스 확장 - AccountUpdateFormTest 검증 로직 테스트 강화 - MemberUpdaterTest 통합 테스트 개선 Features: - 인증된 사용자의 회원 정보 실시간 수정 - 보안 강화된 계정 업데이트 폼 검증 - 동적 프래그먼트 기반 프로필 관리
Backend: - ImageApi 컨트롤러 구조 개선 및 엔드포인트 최적화 - ImageReadService 이미지 조회 로직 성능 개선 - 이미지 업로드 상태 조회 API 안정성 강화 Frontend: - member-profile 프래그먼트 템플릿 최적화 - 동적 이미지 로딩 및 캐싱 전략 개선 - 프로필 이미지 표시 로직 보강 Features: - 이미지 업로드 상태 실시간 조회 기능 개선 - 프로필 이미지 관리 UX 최적화 - API 응답 형식 표준화
Backend:
- MemberPrincipal에서 profileImageUrl을 imageId로 변경하여 데이터 일관성 확보
- MemberVerifyService에서 불필요한 ImageReader 의존성 제거로 단일 책임 원칙 적용
- Member 도메인에 imageId getter 추가로 접근성 개선
- MemberFragmentView와 PostReadView에서 불필요한 URL 전달 로직 제거
Frontend:
- 모든 프로필 이미지 템플릿에서 동적 API 경로(/api/images/{imageId}) 사용으로 통일
- Thymeleaf 템플릿에서 null 체크 로직 강화로 안정성 확보
- member-profile, sidebar, posts-content 프래그먼트 이미지 표시 방식 표준화
- 프로필 페이지와 게시글 목록 페이지 이미지 로딩 일관성 확보
Test:
- MemberPrincipalTest에서 profileImageUrl 관련 테스트 케이스 제거
- imageId 기반 테스트 케이스로 전환 및 검증 로직 개선
Features:
- 이미지 ID 기반 동적 이미지 로딩 시스템 도입
- 불필요한 URL 생성 로직 제거로 성능 최적화
- 일관된 프로필 이미지 관리 아키텍처 확립
Backend: - FriendRequestCommand에 fromMemberNickName 필드 추가로 양방향 닉네임 정보 저장 - FriendRelationship 엔티티에 memberNickname 컬럼 추가 및 데이터베이스 스키마 개선 - FriendRequestService에서 요청자 닉네임 조회 로직 추가로 데이터 완전성 확보 - Friendship 도메인에서 FriendRelationship.of() 메서드 단일화로 코드 간소화 - FriendReadView와 FriendWriteView에서 불필요한 MemberReader 의존성 제거 Frontend: - friend-requests 템플릿에서 요청자 닉네임 표시 로직 수정 - posts-content 템플릿에서 authorId 기반 권한 체크 로직 개선 - member/profile.html에서 다른 사용자 조건문 버그 수정 Test: - 모든 FriendRequestCommand 관련 테스트 케이스를 새로운 구조로 업데이트 - FriendRelationship 테스트에서 양방향 닉네임 검증 로직 강화 - FriendshipReaderTest에서 createAcceptedFriendship 헬퍼 메서드 개선 - 불필요한 테스트 케이스 제거로 테스트 효율성 향상 Features: - 친구 관계에서 요청자와 수신자 닉네임 모두 저장으로 데이터 일관성 확보 - 단일 책임 원칙 기반으로 뷰 컨트롤러 의존성 최적화 - 친구 요청 시나리오에서 더 완전한 정보 관리 시스템 구축
Backend: - MemberDetail에서 프로필 주소 유효성 검증 로직 강화 및 도메인 규칙 개선 - Member 도메인에서 팔로우/친구 관계 종료 시 상태 일관성 확보 로직 추가 - FollowTerminator와 FriendshipTerminator 서비스 단일 책임 원칙 기반 재구성 - FriendshipReader에서 친구 관계 조회 최적화 및 성능 개선 - FollowTerminationService에서 트랜잭션 관리 및 예외 처리 강화 Frontend: - friend-requests와 friend-widget 프래그먼트에서 동적 데이터 바인딩 개선 - 친구 요청 목록에서 닉네임 표시 로직 수정 및 UI 일관성 확보 - FollowTerminateView에서 HTMX 기반 동적 상태 업데이트 구현 Test: - MemberUpdaterTest에서 프로필 주소 검증 시나리오 확장 - FollowTerminatorTest와 FriendshipReaderTest 테스트 케이스 재구성 - HomeViewTest, PostViewTest에서 인증 상태 시뮬레이션 개선 - ImageReaderTest에서 이미지 조회 권한 검증 로직 강화 - MemberTest와 MemberDetailTest 도메인 테스트 완전성 확보 Features: - 회원 정보 수정 시 유효성 검증 강화로 데이터 무결성 확보 - 친구/팔로우 관계 종료 시 원자적 연산으로 안정성 향상 - 동적 프래그먼트 기반 실시간 UI 업데이트 시스템 구축 - 포괄적인 테스트 커버리지로 코드 신뢰성 확보
Backend: - FollowCreateCommand와 FollowRelationship 구조 개선으로 데이터 일관성 확보 - FollowCreationService에서 팔로우 로직 단일 책임 원칙 적용 - FollowRepository와 FriendshipRepository 쿼리 최적화 - MemberPrincipal에서 팔로우 관련 필드 구조 개선 - Follow 도메인에서 비즈니스 규칙 강화 및 검증 로직 개선 Frontend: - 팔로우 템플릿을 fragment.html에서 followers/following 프래그먼트로 분리 - FollowReadView에서 동적 프래그먼트 로딩 방식 도입 - FollowViews 클래스에서 뷰 경로 관리 체계화 Test: - FollowReadViewTest 신규 생성으로 프래그먼트 테스트 커버리지 확보 - FollowViewTest 제거로 중복 테스트 정리 - ImageApiTest에서 이미지 접근 권한 테스트 케이스 확장 - 모든 팔로우 관련 도메인 테스트 재구성 및 검증 강화 Features: - 프래그먼트 기반 동적 팔로우/팔로워 목록 시스템 구축 - 팔로우 관계 생성 시 닉네임 정보 저장으로 데이터 완전성 확보 - 개선된 테스트 아키텍처로 코드 신뢰성 및 유지보수성 향상
Backend: - CollectionReadView에서 setCommonModelAttributes 메서드 제거로 코드 간소화 - 불필요한 memberReader 의존성 제거로 단일 책임 원칙 적용 - author 객체 대신 authorId 사용으로 데이터 전달 효율화 - 모델 속성 설정 로직 통합으로 일관성 확보 Frontend: - collections-content 템플릿에서 권한 체크 조건을 authorId 기반으로 수정 - HTMX 요청 파라미터에서 author 객체 참조 제거로 성능 최적화 - 컬렉션 관리 버튼 권한 로직 개선으로 UI 일관성 확보 Test: - CollectionReadViewTest에서 author 속성 검증을 authorId로 변경 - 불필요한 모델 속성 검증 제거로 테스트 효율성 향상 - 모든 테스트 케이스에서 변경된 모델 구조 반영 Features: - 경량화된 모델 속성 전달 시스템으로 메모리 사용량 최적화 - 단순화된 권한 체크 로직으로 코드 유지보수성 향상 - 일관된 데이터 전달 패턴으로 아키텍처 표준화
Backend: - PostCollectionDetailResponse DTO 신규 생성으로 응답 데이터 표준화 - CollectionReadService에 readDetail() 메서드 추가로 데이터 집계 로직 이전 - CollectionReadView에서 서비스 계층으로 데이터 조회 책임 이관 - CollectionReader 인터페이스에 상세 조회 메서드 정의로 계약 명확화 Image: - PresignedPutResponse에 @jsonformat 추가로 날짜 직렬화 개선 - PresignedPutResponseTest 신규 생성으로 JSON 처리 로직 검증 강화 - 이미지 메타데이터 처리 및 특수 문자 지원 테스트 확장 Test: - CollectionReaderTest에 readDetail() 메서드 테스트 케이스 5개 추가 - FollowResponseTest에서 프로필 이미지 ID 필드 검증 로직 보강 - ImageReaderTest에서 이미지 조회 권한 검증 테스트 개선 Features: - 단일 API 호출로 컬렉션 정보 + 포스트 목록 + 작성자 포스트 통합 제공 - 타임존 형식 표준화로 클라이언트 호환성 확보 - 포괄적인 테스트 커버리지로 API 안정성 확보
README: - 기술 스택 상세 추가 (Kotlin 2.1.21, Spring Boot 3.x, AWS 구성요소) - 주요 기능 분류 상세화 (내돈내산 리뷰, 소셜 네트워킹, 신뢰도 시스템) - 성과 지표 테이블 추가 (배포 시간 단축, 코드 품질, 테스트 커버리지) - 클라우드 아키텍처 다이어그램 개선 (불필요한 화살표 제거) API_DOCUMENTATION: - 이미지 관련 API 문서 300라인 추가 (Presigned URL, 업로드 확인, 조회, 삭제) - 전체 업로드 플로우 시퀀스 다이어그램 추가 - 클라이언트 구현 예시 코드 포함 (JavaScript) - 에러 응답 상세화 및 보안 고려사항 명시 - 한글 오타 수정 (大部分 → 대부분) ARCHITECTURE: - 헥사고날 아키텍처 다이어그램을 Mermaid로 변경 - 이미지 관리 시스템 구조 추가 (S3, Email, Security) - 프로젝트 구조 표준화 (image/ 패키지 추가) - 의존성 방향 시각화 개선 DOMAIN_MODEL: - 이미지 애그리거트 섹션 추가 (Image, FileKey, ImageType) - 도메인 모델 다이어그램에 Image Aggregate 포함 - 경로 안전성 검증 로직 상세 설명 IMAGE_MANAGEMENT: - 시퀀스 다이어그램 화살표 스타일 통일 - SQL 포맷팅 개선 및 가독성 향상 - HTML 프래그먼트 들여쓰기 표준화 - Spring Boot S3 통합 문서 링크 추가 TESTING_GUIDE: - LocalStack S3 테스트 환경 설명 추가 - 이미지 관리 시스템 테스트 시나리오 4종 상세화 - 테스트 커버리지 목표 및 체크리스트 추가 QUICK_START: - Flyway 마이그레이션 설명 추가 - LocalStack S3 컨테이너 정보 포함 - 이미지 관리 시스템 문서 링크 추가 Features: - 7개 문서, 875라인 추가로 프로젝트 이해도 대폭 향상 - 이미지 관리 시스템 완전한 문서화 - 테스트 전략 및 도구 스택 상세 안내 - 개발자 온보딩을 위한 종합 가이드
API_DOCUMENTATION: - Base URL에 프로덕션 환경 추가 (https://rmrt.albert-im.com/) - MemberView 4개 컨트롤러 분리 문서화 (Auth, Profile, Settings, Fragment) - 팔로우 프래그먼트 분리 상세 기술 (followers.html, following.html) - 컬렉션 상세 조회 DTO 표준화 및 서비스 계층 이전 문서화 - 이미지 API 테이블 포맷 개선 및 불필요한 코드 예시 제거 - 친구/팔로우 관계 생성 시 닉네임 저장 기능 명시 ARCHITECTURE: - MemberView 리팩토링 구조 반영 (4개 전문 컨트롤러) - 팔로우 프래그먼트 분리 구조 추가 (fragments/ 디렉토리) - 패키지 구조 체계화 (form, validator, converter, util, message) DOMAIN_MODEL: - Friendship/Follow 생성 로직 개선 (feature36) - 닉네임 정보 저장으로 데이터 완전성 확보 및 조회 성능 개선 - Command 패턴 도입으로 도메인 로직 명확화 IMAGE_MANAGEMENT: - 시퀀스 다이어그램 화살표 스타일 통일 - HTML 프래그먼트 들여쓰기 표준화 - 개요 설명 줄바꿈 개선 TODO: - 문서 전면 재작성 (475줄 → 655줄) - 테스트 가이드 통합 및 상세화 - 우선순위 체계 명확화 (P0-P3) - 상태 추적 시스템 개선 (✅, ☐, 🚧,⚠️ , 🔍) - 이미지 관리 시스템 완료 상태 반영 Features: - feature36 리팩토링 완료: 단일 책임 원칙 적용 및 유지보수성 향상 - 5개 문서 680라인 추가로 프로젝트 이해도 대폭 개선 - 개발자 온보딩을 위한 종합 가이드 완성 - 테스트 전략 및 TODO 관리 체계화
- follows 테이블에 프로필 이미지 ID 컬럼 추가 - member_detail 테이블에 image_id 컬럼 추가 - friendships 테이블에 member_nickname 컬럼 추가 - members 테이블에 post_count 컬럼 추가 - 여러 테이블의 status, role, image_type 컬럼 타입을 VARCHAR로 변경 - trust_score 테이블의 trust_level 컬럼 타입 변경 - members.email과 password_reset_tokens.token에 인덱스 추가
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.

📋 주요 변경 내용 요약
🎯 핵심 아키텍처 개선
🛠️ 기능별 개선 사항
회원 관리 시스템
팔로우/친구 기능
게시글 및 컬렉션
🧪 테스트 커버리지 확장
🔧 코드 품질 향상
🚀 데이터베이스 개선
이 PR은 단일 책임 원칙과 프래그먼트 기반 아키텍처를 통해 전체 시스템의 유지보수성과 확장성을 크게 향상시키는 대규모 리팩토링입니다.