본문 바로가기

Sparta 내일배움캠프 Java 5기/[13주차] Spring 심화 Team Project ✓5

(24.07.16) A08조 "Palette" Project - KPT 회고 Summary👍 KEEP협업 회의 시, 너무 기능 구현 또는 해야할 일에서만 회의를 하는 것이 아니라 서로 Small Talk을 섞어가면서 활기찬 분위기와 좋은 컨디션으로 프로젝트를 진행할 수 있었다.프로젝트를 시작 하기 전, GitHub 규칙, Git Convetion, .env 를 통한 환경변수 설정 및 docker-compose.yml을 통한 협의를 통해 개발 환경을 일치시켜, 개발 환경 관련 트러블이 발생하지 않았다.GitHub에 Pull Request 진행이 있을 때 곧바로 Merge 되는 것이 아니라 서로의 코드를 보면서 부족한 부분이나 놓친 부분을 점검해주는 코드리뷰/피드백을 적극적으로 할 수 있었다.서로의 코드와 로직 등 각 팀원간 분배되어 구현된 기능과 파트에 대해서 서로 코드로써 존중.. 2024. 7. 16.
(24.07.15) Card 생성의 동시성 제어 Card 생성의 동시성 제어Column과 Card(할일)에 관해서는 Position이라는 위치에 해당하는 값을 필드로 가지고 있기 때문에 동시에 DB에 접근해서 저장/삭제/수정을 할 경우에 대해서 위치가 겹쳐져서 데이터가 입력이 될 수 있으므로 이 부분에 동시성 제어를 적용하기로 결정물론 Redis 자체가 싱글 쓰레드이므로 RedisTemplate을 사용해도 문제는 없으나 실제로 적용하는 연습과 그 과정을 선택하기 위해 선택RedissonConfig@Configurationpublic class RedissonConfig { ... public static final Long WAIT_TIME = 30L; public static final Long LEASE_TIME = 10L; @B.. 2024. 7. 15.
(24.07.12) 칸반보드의 Column 관리 기능 Refactor 및 수정, Comment 기능 개발 Column Refactor 및 수정Column 삭제 -> Column 상태를 DELETED 상태로 변경 으로 수정 // 컬럼 엔터티public class ColumnInfo extends Timestamped { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column(nullable = false) private String statusName; ... @Enumerated(EnumType.STRING) @Column(nullable = false) private Status status; ... public enum Status { .. 2024. 7. 12.
(24.07.11) 칸반보드의 Column 관리 기능 개발 3 Layer Architecture(Controller - Service - Repository) 중 Service 기준Column 생성, 삭제 기능 // 컬럼 생성public ColumnInfoResponseDto createColumn(Long boardId, @Valid ColumnInfoRequestDto columnInfoResponseDto, User user) { ... ColumnInfo columnInfo = new ColumnInfo(columnInfoResponseDto, foundBoard); .. 2024. 7. 11.