이번 주 목표 방학을 잘 마무리 하자 프로젝트를 열심히 하자 2023-2-19 일요일 친구에게 멘토링을 해주기 위해 스프링 예제 프로젝트를 생성 및 개발했다. 졸업작품 회의에 참여했다. 블록체인 관련 업무를 상세화 했다. 2023-2-20 월요일 부엉이숲 프로젝트에서 Soft Delete관련 수정을 진행했다. BaseTime 관련 커스텀 리스너를 추가해 적용했다. SoftDelete에서의 엔티티 조회를 위한 커스텀 어노테이션을 추가해 적용했다. Hibernate의 @Where 어노테이션을 활용했다. 2023-2-21 화요일 부엉이숲에서 ID 만을 Response할 때 쓰는 DTO들을 하나로 묶는 수정 작업을 수행했다. 친구에게 스프링 멘토링을 진행했다. 간단하게 MVC 부분과 DB 접근 부분을 알려줬다...
이번 주 목표 프로젝트 개인 공부 휴식 2023-2-12 일요일 부엉이숲 프로젝트의 파일 업로드 부분에 대해 레퍼런스를 서칭했다. 2023-2-13 월요일 부엉이숲 프로젝트의 파일 업로드 및 다운로드 API 를 완성했다. 테스트 코드와 문서화도 마쳤다. 백준 재채점으로 인해 틀린 문제 두 문제를 풀었다. 원래 풀었던 아이디어가 있었어서 많이는 안걸렸다. 2023-2-14 화요일 부엉이숲 프로젝트에서 S3 버킷에 파일 업로드 및 다운하는 API를 구현했다. 2023-2-15 수요일 졸업작품 프로젝트에 Controller Advice를 추가했다. 2023-2-16 목요일 모던 자바 인 액션을 이어서 읽었다. 스트림에서의 reduce에 대해 더 깊게 알 수 있었고, 스트림을 다양한 방식으로 생성하는 방법을 알..
https://www.acmicpc.net/problem/6087 6087번: 레이저 통신 크기가 1×1인 정사각형으로 나누어진 W×H 크기의 지도가 있다. 지도의 각 칸은 빈 칸이거나 벽이며, 두 칸은 'C'로 표시되어 있는 칸이다. 'C'로 표시되어 있는 두 칸을 레이저로 통신하기 위해서 www.acmicpc.net 문제 크기가 1×1인 정사각형으로 나누어진 W×H 크기의 지도가 있다. 지도의 각 칸은 빈 칸이거나 벽이며, 두 칸은 'C'로 표시되어 있는 칸이다. 'C'로 표시되어 있는 두 칸을 레이저로 통신하기 위해서 설치해야 하는 거울 개수의 최솟값을 구하는 프로그램을 작성하시오. 레이저로 통신한다는 것은 두 칸을 레이저로 연결할 수 있음을 의미한다. 레이저는 C에서만 발사할 수 있고, 빈 칸에 ..
https://www.acmicpc.net/problem/6588 6588번: 골드바흐의 추측 각 테스트 케이스에 대해서, n = a + b 형태로 출력한다. 이때, a와 b는 홀수 소수이다. 숫자와 연산자는 공백 하나로 구분되어져 있다. 만약, n을 만들 수 있는 방법이 여러 가지라면, b-a가 가장 큰 www.acmicpc.net 문제 1742년, 독일의 아마추어 수학가 크리스티안 골드바흐는 레온하르트 오일러에게 다음과 같은 추측을 제안하는 편지를 보냈다. 4보다 큰 모든 짝수는 두 홀수 소수의 합으로 나타낼 수 있다. 예를 들어 8은 3 + 5로 나타낼 수 있고, 3과 5는 모두 홀수인 소수이다. 또, 20 = 3 + 17 = 7 + 13, 42 = 5 + 37 = 11 + 31 = 13 + 29 ..
이번 주 목표 졸업작품, 부엉이숲 개발 진행 휴식 2023-2-5 일요일 부엉이숲에서 적용 중이던 DDD를 결국 다시 원래 상태로 되돌리기로 했다. 쿼리 프로젝션에서 많이 막혔고, 다른 부분들에서도 비효율적이라는 것을 느껴 다시 원상태로 바꾸기로 했고, 지금이라도 바뀐게 다행일지도 모른다 생각한다. 졸업작품 프로젝트를 진행했다. MAC OS 에서 카프카와 Selenium을 위한 Chrome Driver가 정상적으로 돌지 않는 문제를 해결했다. 카프카는 다른 카프카 이미지로 수정했고, Chrome 대신 Firefox를 써서 해결했다. API 문서화를 진행했다. 테스트 코드를 작성해 적용시켰다. 2023-2-6 월요일 부엉이숲 프로젝트에서 스터디 그룹 관련 코드를 다시 짰다. 졸업작품에서 오류를 수정했다. ..
이번 주 목표 졸업작품을 1차 스프린트 부엉이숲 프로젝트 개발 개인공부 2023-2-1 수요일 부엉이숲 회의에 참여해 개발했다. 졸업작품 회의에 참여해 개발했다. 2023-2-2 목요일 졸업작품 회의에 참여해 개발했다. 2023-2-3 금요일 부엉이숲 개발을 진행했다. QueryDsl을통해 프로젝션을 수행하는 부분에서 리스트가 DTO에 포함 된 경우를 해결하지 못했다. 졸업작품 개발을 진행했다. Selenium 라이브러리를 위해 도커 디렉토리에 크롬 드라이버를 설치하는 코드를 작성했고 완료했다. 하지만 팀원들의 맥북에서 오류가 나는 현상을 발견했다. 2023-2-4 토요일 부엉이숲 개발을 진행했다. 졸업작품 개발을 진행했다. 이번 주 리뷰 개발만 정신없이 하고 있다. 뭔가 쉬고 싶다…
이번 주 목표 부엉이숲 프로젝트 개발 현장프로젝트 개발 마무리 졸업작품 스프린트 시작 2023-1-22 일요일 백준 두문제를 풀었다. 별찍기 문제였고 분할 정복으로 풀었다. 별 찍기라고 만만하지 않은 문제도 있다는 것을 알게 되었다. 나머지 한 문제는 버블 소트에서 Swap 횟수를 구하는 문제로 병합 정렬로 풀어야 주어진 시간 제한을 통과할 수 있는 문제였다. 현장프로젝트의 image, comment에 대한 API들을 작성 완료했다. 2023-1-23 월요일 현장프로젝트의 남은 API들을 팀원과 같이 개발하여 전체 완료했다. 부엉이숲 프로젝트의 개발을 진행했다. 좋아요를 회원별로 식별할 수 있도록 개발하고 싶은데 헷갈려서 시간을 많이 썼다. 2023-1-24 화요일 스프링 강의를 들었다. 타임리프와 스프..
https://www.acmicpc.net/problem/1517 1517번: 버블 소트 첫째 줄에 N(1 ≤ N ≤ 500,000)이 주어진다. 다음 줄에는 N개의 정수로 A[1], A[2], …, A[N]이 주어진다. 각각의 A[i]는 0 ≤ |A[i]| ≤ 1,000,000,000의 범위에 들어있다. www.acmicpc.net 문제 N개의 수로 이루어진 수열 A[1], A[2], …, A[N]이 있다. 이 수열에 대해서 버블 소트를 수행할 때, Swap이 총 몇 번 발생하는지 알아내는 프로그램을 작성하시오. 버블 소트는 서로 인접해 있는 두 수를 바꿔가며 정렬하는 방법이다. 예를 들어 수열이 3 2 1 이었다고 하자. 이 경우에는 인접해 있는 3, 2가 바뀌어야 하므로 2 3 1 이 된다. 다음으..