전체 글 (183) 썸네일형 리스트형 TIL-231118([프로그래머스/자바] 간단한 식 계산하기) 📝오늘 공부한 것 프로그래머스 문제풀기 📌 문제 📌 풀이 class Solution { public int solution(String binomial) { int answer = 0; String[] str = binomial.split(" "); int a = Integer.parseInt(str[0]); int b = Integer.parseInt(str[2]); if(str[1].equals("+")){ answer = a + b; } else if (str[1].equals("-")) { answer = a - b; } else { answer = a * b; } return answer; } } 1. "a op b" 형태의 이항식이 공백을 기준으로 나뉘어져 있다. 2. 공백을 기준으로 문자열을.. TIL-231117(JPA N+1 문제) 📝오늘 공부한 것 'N+1 문제' 공부하기 커리어톤 참여 프로그래머스 문제풀기 📌 N + 1 며칠전봤던 면접에서 N+1문제에 관해서 여쭤보셨다. 그런데 N+1이 내가 원했던 만큼의 쿼리 조회보다 N번 더 발생하는 것이라는 것만 알고, 정확히는 알지못해서 면접 때 대답하지 못했었다ㅠㅠ(내가 알고 있는것에 확신이 없어서 아예 '잘 모르겠습니다'라고 대답하였다. N+1도 공부하려고 했던 것들 중에 하나였는데, 늦었지만 오늘이라도 정리를 해보려고 한다!! 연관관계에서 발생하는 이슈로 연관관계가 설정된 엔티티를 조회할 경우에 조회된 데이터 갯수(n)만큼 연관관계의 조회 쿼리가 추가로 발생하여 데이터를 읽어오게 된다. -> 1번 조회해야 할 것을 N개 종류의 데이터 각각을 추가로 조회하게 되서 총 N+1번 DB 조.. TIL-231116(DDD, 도메인 주도 설계) 📝오늘 공부한 것 'DDD 도메인 주도 설계' 공부하기 커리어톤 참여 프로그래머스 문제풀기 📌 DDD(Domain-Driven Design) : 도메인 주도 설계 실제 업무에서 사건이 발생하는 집합인 도메인을 중심으로 설계하는 방법 해당 도메인과 일치하도록 소프트웨어를 모델링하는 데 중점을 둔 소프트웨어 설계 접근 방식(wikipedia) 한가지 중요한 특징은 소프트웨어 코드의 구조와 언어(클래스 이름, 클래스 메서드, 클래스 변수)가 비즈니스 도메인의 용어를 일치시켜 나간다는 점이다. 보편적인(ubiquitous) 언어의 사용이다. 도메인 전문가와 소프트웨어 개발자 간의 커뮤니케이션 문제를 없애고 상호가 이해할 수 있고 모든 문서와 코드에 이르기까지 동일한 표현과 단어로 구성된 단일화된 언어체계를 구축.. TIL-231115([프로그래머스/자바] 콜라츠 수열 만들기) 📝오늘 공부한 것 커리어톤 참여하기 프로그래머스 문제풀기 면접 준비 면접 보고오기 📌 문제 📌 정답 import java.util.ArrayList; import java.util.List; class Solution { public int[] solution(int n) { List listAnswer = new ArrayList(); while (n!=1){ listAnswer.add(n); if(n%2==0){ n = n/2; } else { n = 3 * n +1; } } listAnswer.add(1); int[] answer = listAnswer.stream().mapToInt(Integer::intValue).toArray(); return answer; } } ⭐ for문과 while문 .. TIL-231114([프로그래머스/자바] 가까운 1 찾기) 📝오늘 공부한 것 커리어톤 참여하기 면접 준비하기 프로그래머스 문제풀기 📌 문제 📌 풀이 class Solution { public int solution(int[] arr, int idx) { int answer = 0; for(int i=idx;i TIL-231113([프로그래머스/자바] 특별한 이차원 배열 2) 📝오늘 공부한 것 JMeter 테스트 커리어톤 참여하기 프로그래머스 문제풀기 📌 문제 📌 풀이 class Solution { public int solution(int[][] arr) { int answer = 1; int n = arr.length; for(int i=0;i arr[i][j] == arr[j][i])) ? 1 : 0; } } WIL-2023/11월 (2) 2023.11.06. ~ 2023.11.12. ✍🏻이번주 목표 및 달성 여부 ✅ 기술면접 스터디 ✅ 커리어톤 참여하기 ✅ 프로그래머스 문제풀기 ✅ 이력서 수정하기 ✅ '행동대장' 성능 테스트 💡알게 된 점 총정리(TIL회고) 이번주에는 JMeter를 이용한 성능테스트를 진행해보았다. JMeter를 사용하는 것은 생각보다 쉬웠는데 성능테스트를 진행할 때 목표를 어떻게 설정해야 하는지, 어떠한 기준을 잡아야 유의미한 결과가 나올 수 있는지 등에 대해 고민하는 것이 어려웠다. 실제로 발생한 일이 아니라 모든걸 가정하에 진행해야 한다는 것이 어려웠다. 내가 처음부터 끝까지 상황을 설정해야 했기 때문이다. 그래도 더미데이터도 생성해보고 지금 프로젝트의 성능이 어떤지를 확인하는 것은 재미있었다!! 이번주에는 목표로.. TIL-231111([프로그래머스/자바] 홀수 vs 짝수) 📝오늘 공부한 것 JMeter 테스트 커리어톤 참여하기 프로그래머스 문제풀기 📌 문제 📌 풀이 class Solution { public int solution(int[] num_list) { int answer = 0; int even = 0; int odd = 0; for(int i=0;i odd){ answer = even; } else { answer = odd; } return answer; } } ⭐ Math.max 함수를 사용한 풀이 더 큰 값을 비교하여 return하는 방법에서 if문을 사용하여 비교하였다. 그런데 정리하다 보니 Math.max함수를 사용하면 코드가 더 간단해진다는 것이 생각났다! if(even > odd){ answer = even; } else { answer = odd.. 이전 1 2 3 4 5 ··· 23 다음 2/23