본문 바로가기

TIL

(62)
2023.02.17 유저 신고 기능 구현 entity @AllArgsConstructor @NoArgsConstructor @Getter @Setter @Entity public class ReportHistory extends TimeStamp { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @ManyToOne @JoinColumn(nullable = false) private User reporter; private String reporterUserName; @ManyToOne @JoinColumn(nullable = false) private User reportedUser; private String reportedUsername; @Column(nu..
2023.02.15 S3 이미지 업로드 ( 프로필, 게시판) https://kim-jong-hyun.tistory.com/78 [Spring] - Spring Boot + AWS S3를 이용하여 이미지 조회/등록/삭제 및 accessKey, secretKey, butket 값을 외부에 이번장에는 Spring Boot와 AWS SDK를 이용하여 AWS S3에 이미지/파일 정적리소스들을 등록, 조회, 삭제하는 내용에 대해 정리해보고자한다. 그전에 AWS S3에 버킷생성 / IAM 사용자를 생성후 S3 액세스 권 kim-jong-hyun.tistory.com 참고
Index Index란테이블의 특정 컬럼(Column)에 인덱스를 생성하면, 해당 컬럼의 데이터를 정렬한 후 별도의 메모리 공간에 데이터의 물리적 주소와 함께 저장된다. 컬럼의 값과 물리적 주소를 (key, value)의 한 쌍으로 저장 Index란 추가적인 작업들을 통해서 테이블에서 데이터의 조회 속도를 향상 시켜 줄 수 있는 자료구조
[WIL] 2023.02.06~02.10 최종 프로젝트를 시작하는 주였다. 팀원들은 학구열이 높고 열정이 가득하여 모든 과정에서 열심히 하였다 주제 선정부터 치열한 회의를 거쳐 식단 및 운동 정보를 공유하는 커뮤니티를 구축하기로 결정하였고, ERD, API명세 등 설계에서도 꼼꼼히 따져가며 진행되었다. 막히는 부분이 있으면 수시로 팀원과 대화하고 타 팀원이나 튜터님들의 조언을 구하기도 하였다. 협업을 위한 커밋 커벤션, 코딩 컨벤션을 정했고, 항상 카메라를 켜서 적극적인 자세로 임할 것을 약속하였다. 약속들을 잘 지켜 첫 주에 계획했던 분량만큼 진행되었다.
운동, 식단 관리 및 정보 공유 웹사이트(1) 문제점 운동 정보를 기록할 때 운동별 칼로리 소모에 대한 데이터를 찾지 못해 구현에 어려움이 있었음 시도 각종 운동별 칼로리 계산기능이 있는 웹 사이트와 관련 정보가 있는 api를 검색했으나 접근성이 떨어지고 계산이 부정확한 경우가 있었음 해결 1kg의 신체가 1분간 소비하는 산소 소비량 (mL)인 MET를 운동별로 정리한 공공데이터를 참고하여 대표적인 운동을 선별 후 이용자 몸무게와 수행시간을 고려한 Class에서 메서드를 작성함 알게 된 것 접근성이 좋고 사용하기 쉬운 api가 없다면 관련 데이터를 응용하여 원하는 기능을 만들어 내야한다.
CI/CD CI/CD (Continuous Integration/Continuous Delivery)는 자동화하여 애플리케이션을 더욱 짧은 주기로 고객에게 제공하는 방법입니다. CI/CD의 기본 개념은 지속적인 통합, 지속적인 서비스 제공, 지속적인 배포입니다. CI/CD는 새로운 코드 통합으로 인해 개발 및 운영팀에 발생하는 문제(일명 "통합 지옥(integration hell)")를 해결하기 위한 솔루션 CI/CD(Continuous Integration/Continuous Delivery) 차이 CI/CD는 Continuous Integration/Continuous Delivery(지속적 통합/지속적 배포)를 뜻합니다. CI/CD의 "CI"는 개발자를 위한 자동화 프로세스인 지속적인 통합(Continuous..
[WIL] 2023.01.25~01.27 설 연휴 후 심화 프로젝트 발표가 있었다. 23일에 팀원들이 모여서 최종 점검을 하기로 하였는데 예상치 못한 결원이 생겼다 결원으로 인해 시간이 좀 더 소요됐지만 모두들 열정적으로 문제를 해결하였다. 밤 늦게까지 다른 팀원의 오류도 같이 잡아준 팀원에게 감사하고 서로 코드를 보며 실력이 향상 되었다. 25일 발표 준비와 발표를 하였고 발표직전까지 모든 팀원이 심혈을 기울였다. 무사히 발표를 마쳤으나 다른 팀의 결과물을 보고 많은 부족함을 느끼기도 하였다. 26~27일엔 단위테스트 강의와 프론트엔드 특강을 들으며 최종 프로젝트에 도움이 될만한 내용을 학습하였다. 꾸준한 반복 학습으로 이전에 배운 내용과 새로운 내용을 모두 접모시켜 최종프로젝트에 임할 것이다.
2023.01.26 단위 테스트 통합 테스트와 단위 테스트 단위 테스트 : 가장 작은 단위의 테스트 방식. 메서드 단위로 테스트를 수행하고, 의도한 결과값이 나오는지 확인하는 수준 (ex: controller, service, repository… 격리해서 따로따로) 통합 테스트 : 어플리케이션이 정상적으로 동작하는지 확인. 여러모듈을 함께 테스트 (ex: controller 메소드를 호출하면 controller → service→ repository 모두 수행) F.I.R.S.T 원칙 Fast : 단위 테스트는 빨라야 한다. Independent : 단위 테스트는 각각의 테스트가 연관되지 않고, 고립되어야 한다. 즉 독립적 이어야 한다. Repeatable : 단위테스트는 반복 가능해야한다. 반복적으로 테스트를 시행해도, 결과는 같아..