분류 전체보기

재취업 준비

과제전형 피드백 회고

29CM 백엔드 개발자 채용 공고에 지원하였고, 과제에서 탈락했다. 면접으로 가는 것에 실패했지만, 감사하게도 과제로 제출 한 것에 대한 피드백이 왔고 이것을 리뷰하고자 한다. Setter로 인해 도메인 안정성이 깨질 가능성이 있습니다. 가급적 Setter는 지양해주시면 좋을 것 같습니다. Setter를 사용하지 않는데 여러가지 이유가 있고, 그것을 나열하자면 의도를 파악하기 힘들다. 객체의 일관성을 유지하기 어렵다 도메인 로직의 분산 Setter는 public으로 선언되고 사용 등이 있다. 1. 의도를 파악하기 어렵다. @Getter @Setter public class Order { private UUID orderId; private Item item; private int quantity; pub..

Backend/Java

Spring MySQL 연결 오류

발생 환경 SpringBoot v3.2.3 MySQL 8.1 문제점 application.properties spring.datasource.driver-class-name=com.mysql.cj.jdbc.DriverCannot resolve class or package 'mysql' Cannot resolve class or package 'cj' Cannot resolve class or package 'jdbc' Cannot resolve class 'Driver' gradle build 시 User Starting a Gradle Daemon, 3 stopped Daemons could not be reused, use --status f..

재취업 준비/코테

[python] baekjoon 백준 10986 나머지합

문제 수 N개 A1, A2, ..., AN이 주어진다. 이때, 연속된 부분 구간의 합이 M으로 나누어 떨어지는 구간의 개수를 구하는 프로그램을 작성하시오. 즉, Ai + ... + Aj (i ≤ j) 의 합이 M으로 나누어 떨어지는 (i, j) 쌍의 개수를 구해야 한다. 입력 첫째 줄에 N과 M이 주어진다. (1 ≤ N ≤ 106, 2 ≤ M ≤ 103) 둘째 줄에 N개의 수 A1, A2, ..., AN이 주어진다. (0 ≤ Ai ≤ 109) 출력 첫째 줄에 연속된 부분 구간의 합이 M으로 나누어 떨어지는 구간의 개수를 출력한다. 풀이 부분 합을 계속 구했더니 시간 초과가 발생하였고, 결국 ChatGPT 도움을 받아서 해결했다. 그런데 봐도 봐도 이해가 잘 안돼서.. 결국 이해 했지만, 나와 같은 사람이..

재취업 준비/코테

[python] baekjoon 백준 1806 부분합

문제 10,000 이하의 자연수로 이루어진 길이 N짜리 수열이 주어진다. 이 수열에서 연속된 수들의 부분합 중에 그 합이 S 이상이 되는 것 중, 가장 짧은 것의 길이를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N (10 ≤ N 시간초과 import sys input = sys.stdin.readline n, s = map(i..

재취업 준비/코테

코테 가이드

필요개념 누적합 -> 4/8 시작 구현 그래프이론 DFS BFS 트리순회 완전탐색 백트래킹 비트마스킹 그리디 라인스위핑 투포인터 LIS 이분탐색 DP 최단거리 팬윅트리 (개념 + 5 ~ 6문제 씩 풀고 다음개념) 수준 최소 160문제 이상 and (프로그래머스 레벨 3~4 or 플래 초입)

잡담

리디페이퍼4 컴퓨터 연결오류

컴퓨터는 Win 11 Home 을 사용하고 있는데... 집에 있는 USB-C를 6개는 바꿔봤는데 죄다 충전만 되고,,, 데이터 전송이 되지않는 문제.. https://20191126.tistory.com/153, 공식링크 리디페이퍼4 pc연결 오류 인식 안 될 때 제 글이 도움되시면 하트💌및 댓글💬 부탁드립니다 며칠 간 온갖 방법 다 해보다가 드디어 해결하게 되어 공유합니다 PC 연결 인식 불가 문제(USB케이블, MTP 연결) – 리디 고객센터 (ridibooks.com) 20191126.tistory.com 에 있는 window media player를 앱스토어에서 깔아도 실패했고 장치관리자에 인식되는지도 봤는데 인식은 안되고 충전만... 된다... 컴퓨터에 있는 모든 USB포트가 다 비슷했는데 결국..

Backend/Java

스프링 어노테이션 정리

어노테이션 기능설명 @Configuration 해당 클래스를 스프링의 설정 클래스로 지정합니다. 스프링 컨테이너가 시작될 때 해당 클래스를 참조하여 설정 정보를 로딩합니다. 스프링의 다른 어노테이션들을 사용하려면 해당 클래스에 @Configuration 어노테이션을 추가해야 합니다. @Bean 해당 메서드가 스프링 빈으로 등록됨을 표시합니다. 스프링은 @Bean 어노테이션이 있는 메서드를 호출하여 객체를 생성하고, 컨테이너에 등록합니다. 빈 이름을 지정하지 않으면 메서드 이름이 빈 이름이 됩니다. @Data 클래스에 대한 Getter, Setter, EqualsAndHashCode, RequiredArgsConstructor, toString 메서드를 생성해줍니다. 이 어노테이션을 사용하면 클래스의 코드..

재취업 준비/코테

누적합이란?

누적합(cumulative sum)은 배열의 각 원소까지의 합을 미리 계산하여 누적한 값을 저장한 배열입니다. 이를 이용하면, 구간 합을 빠르게 계산할 수 있습니다. 구간 합은 배열에서 주어진 구간에 속한 모든 원소의 합을 의미합니다. 예를 들어, 배열 arr에서 2번째 원소부터 5번째 원소까지의 합을 계산해야 한다면, 다음과 같이 코드를 작성할 수 있습니다. arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] start = 2 end = 5 sum = 0 for i in range(start, end+1): sum += arr[i] print(sum) 위 코드는 구간 합을 계산하는 가장 간단한 방법입니다. 하지만, 배열의 크기가 크고 구간 합을 계산해야 하는 횟수가 많아질 경우에는 이 ..

잡담

소프트웨어와 AI시대, 어떻게 성장할 것인가

“인문학, 과학, 예술은 우리가 지켜야 할 가치를 정의하고, 소프트웨어와 AI는 그 가치를 구현한다.” “2010년 전후 IT 업계의 암흑기가 있었다. OECD 평균 노동시간이 년 1,749시간이고 한국이 2,193시간으로 OECD 최장을 기록할 때, 한국 IT 개발자는 년평균 2,906시간을 기록했다. ‘매일 컵라면 2,000개를 먹으며 하나은행• 외환은행 IT 통합 밤샘 작업을 성공적으로 마쳤다’는 것을 자랑하던 시기였다. 듀오 같은 결혼정보회사에서 인기 신랑감 직업 순위를 100등까지 발표하는데.. 당시 99등이 IT 개발자였다. (100등은 탈북자..ㅎ) 물론 지금은 바뀌었다. 오늘날의 소프트웨어 산업은 자수성가가 가능한 산업이고, 평생 기대수입이 가장 많은 산업이고, 가장 고용역량이 크고, 산업..

Backend/Python

Traefik err - Unsolicited response received on idle HTTP channel starting with ""(+ FastAPI)

FastAPI와 Traefik을 Docker container로 사용하던 도중 발생한 이슈로 Traefik을 LB로 사용하던 도중 계속해서 죽는 이슈가 발생하였고(컨테이너가 내려가지 않아서 docker engine을 내려야 했음) 추후 Traefik의 에러 로그를 찍어보니 transport.go:2196: Unsolicited response received on idle HTTP channel starting with "{\"status\":\"success\",\"message\":\"삭제 성공\"}"; err= transport.go:2196: Unsolicited response received on idle HTTP channel starting with "{\"status\":\"success..

chani
'분류 전체보기' 카테고리의 글 목록