일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 항해
- 자바
- java
- 스파르타코딩클럽
- 컴퓨터구조론 5판
- 중심사회
- 개발자블로그
- 스파르타내일배움캠프
- 개인공부
- 국비
- 프로그래머스
- wil
- 부트캠프
- 컴퓨터개론
- 코딩테스트
- Flutter
- 백준
- 99클럽
- til
- 스파르타내일배움캠프TIL
- 소프트웨어
- Spring
- Python
- MySQL
- 운영체제
- 99일지
- AWS
- 개발자스터디
- 스파르타내일배움캠프WIL
- 내일배움캠프
- Today
- Total
목록자바 (34)
컴공생의 발자취
프로젝트를 진행하면서 기한을 맞추기 위해 초기의 코드들은 전부 JPA를 사용했다. 근데 기한에 맞추기 위한 코딩을 하다보니 하나의 쿼리를 조회하면 N+1문제로 무수히 많은 쿼리가 생성되었다. 이를 개선하기 위해 팀원들과 의논 후 기간이 한정되어 있기에 조회부분만 QueryDSL을 도입했다. 그 결과 전체 성능이 51.39% 향상되었다. 성능 향상 후 비교했던 기능은 상품 조회, 마이페이지, 채팅방 조회 이렇게 3개의 기능이었다. 해당 포스팅은 어떤 점에서 문제가 발생했으며 최적화 전후의 성능 차이를 비교한다. 성능 문제점초기의 JPA만 사용한 코드는 빠르게 진행하는 데에 도움이 되었지만, 성능 저하를 발생시켰다. 특히 상품 전체 조회, 마이페이지 내 상품 조회, 채팅방 조회 등과 같이 조회 부분에서 두드..
2024.09.05.(수)나는 왜 Java Spring Boot를 사용했을까 ❓Java Spring Boot를 선택한 이유는 취업이었다.그 전에는 애초에 직무도 백엔드가 아니었고 많은 과정을 거치면서 Java Spring Boot를 선택했다.처음 일주일 속성으로 Python을 이용한 백엔드를 배웠고 이렇다 할 공부도 하지 못했으며, 결과물도 없었다.그 후 졸업 작품 때 Kotlin으로 Android Studio를 통한 애플리케이션 개발을 했다. Kotlin을 선택한 것은 그 당시 선호도가 높으며 자료가 많다고 판단해서 선택했으나 실제로 개발하면서 Java에 대해 남아있는 자료가 많아서 프로젝트를 변경했던 것 같다. 그 후 팀 내에서 각자 서로의 방향이 달랐고 남은 졸업 작품을 위해 새로운 팀을 만들었다...
🚨 문제문제 설명 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. "z"는 1만큼 밀면 "a"가 됩니다. 문자열 s와 거리 n을 입력받아 s를 n만큼 민 암호문을 만드는 함수, solution을 완성해 보세요. 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 📚 풀이class Solution { public String solution(String s, int n) { StringBuilder..
🚨 문제문제 설명 숫자로 이루어진 문자열 t와 p가 주어질 때, t에서 p와 길이가 같은 부분문자열 중에서, 이 부분문자열이 나타내는 수가 p가 나타내는 수보다 작거나 같은 것이 나오는 횟수를 return하는 함수 solution을 완성하세요.예를 들어, t="3141592"이고 p="271" 인 경우, t의 길이가 3인 부분 문자열은 314, 141, 415, 159, 592입니다. 이 문자열이 나타내는 수 중 271보다 작거나 같은 수는 141, 159 2개 입니다. 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이하면서 발생한 문제일부 테스트에서 ..
💡 오늘의 학습 키워드- 백준 * 1085번 - 직사각형에서 탈출 : 비기너 문제(브론즈3) 오늘의 회고문제1 : [1085번 - 직사각형에서 탈출]어떤 문제가 있었고, 나는 어떤 시도를 했는지간단하게 현재의 x, y를 받았을 때 0, 0과 w, h로 이루어진 사각형의 경계선과의 차이가 최소인 값을 출력하는 문제이다. 1 w에서 x값을 뺀 것, h에서 y값을 뺀 것과 x, y의 값을 배열로 넣고정렬한 다음에 제일 앞의 값을 출력해서 문제를 해결했다. // 백준 문제 사이트.. 여전히 링크만 올라감ㅠhttps://www.acmicpc.net/problem/1085 어떻게 해결했는지import java.util.*;import java.util.Scanner;public class Main { ..
💡 오늘의 학습 키워드- 백준 * 14681번 - 사분면 고르기 : 비기너 문제(브론즈5) 오늘의 회고문제1 : [14681번 - 사분면 고르기]어떤 문제가 있었고, 나는 어떤 시도를 했는지x와 y의 값이 입력되었을 때 1, 2, 3, 4분면 중 어느 분면인지를 출력해주는 문제이다. x, y의 값을 입력 받고 if문을 사용해서 조건을 걸고 어느 분면인지를 출력해주는 방식으로 문제를 풀이했다.간단한 문제라 바로 풀이 완료~ 어떻게 해결했는지import java.util.*;import java.util.Scanner;public class Main { public static void main(String args[]) { Scanner sc = new Scanner(System..
들어가기에 앞서서...Spring 백엔드 개발자로 진로를 전향하며 코테 언어를 C++에서 JAVA로 바꿨더니만...망할 형변환 아 tlqkf 넘 헷갈린다... !! 까짓거 내가 볼라고 정리 좀 해본다 ~ ** 목차 **1. 문자 : char2. 숫자 : 정수(int), 실수(double)3. 문자열 : String4. 배열 : array5. 총 정리1. 문자 : char char to int / double* 형변환 연산자 사용단순 형변환을 할 경우 해당 아스키코드 값으로 출력한다. ex) '5' -> 53원하는 값을 얻으려면 '0'(48)에 해당하는 값을 빼주어야 한다.// [변경할 타입] 변수명 = (변경할 타입) 변경할 변수명 - '0';char c = '5';int i = (int)(c - '..
💡 오늘의 학습 키워드- 백준 * 2033번 - 반올림 : 비기너 문제(브론즈1) 오늘의 회고문제1 : [10811번 - 바구니 뒤집기]어떤 문제가 있었고, 나는 어떤 시도를 했는지문제의 제목 그대로 반올림하는 문제이다. 446이 입력되면 아래와 같이 계속 반올림 되어 500이 출력되어야 한다.446 -> 450 -> 500 입력받은 수를 문자열로 바꾸어 자리수를 확인한다.입력받은 수를 10으로 나누었을 때의 나머지 값이 5보다 크거나 같으면 현재 위치보다 앞자리에 10을 더한다.그러고 입력받은 수를 10으로 계속 나누어준다. 마지막으로 입력받은 자리 수-1만큼 계산된 결과에 10을 곱해준다. 근데 이거 계속 틀렸다고 뜬다. 뭐가 잘못된 것인지 모르겠다... // 이거 왜 박스? 안 뜨지... ..
💡 오늘의 학습 키워드- 백준 * 10811번 - 바구니 뒤집기 : 비기너 문제(브론즈2) 오늘의 회고문제1 : [10811번 - 바구니 뒤집기]어떤 문제가 있었고, 나는 어떤 시도를 했는지M과 N을 입력받았을 때, M이 배열의 크기 N이 입력받을 라인의 수이다.N개의 라인을 입력 받을 때 한 라인에 i j를 입력 받는데, i와 j는 왼쪽에서부터 i번째부터 j번째까지 역순으로 뒤집는다.단, i와 j는 인덱스가 아닌 1부터 시작하는 값이다. 처음 문제 자체를 이해하는 것도 시간이 걸렸다.말을 잘 이해 못 했다. M개의 바구니가 있을 때, 1~M까지의 바구니에 1번은 1번 숫자, 2번은 1, 2번 숫자 이런 식으로 M번까지 있는 줄 알았다. 결국 패드에 그려보고 문제를 여러 번 자세하게 읽어보면서 ..
💡 오늘의 학습 키워드- 백준 * 30455번 - 이제는 더 이상 물러날 곳이 없다 : 미들러 문제(브론즈1) 오늘의 회고문제1 : [30455번 - 이제는 더 이상 물러날 곳이 없다]어떤 문제가 있었고, 나는 어떤 시도를 했는지문제의 핵심은 입력 받은 값이 짝수일 때 Duck을 홀수일 때 Goose를 출력하는 것이었다. 입력받은 값이 칸의 수라고 할 때, 왼쪽이 Duck 오른쪽이 Goose가 있다.출발은 Duck부터 시작한다. 입력받은 값이 4라고 했을 때, 아래와 같은 과정을 거친다.Duck 0 0 Goose 0 Duck 0 Goose : Duck 이동0 Duck Goose 0 : Goose 이동0 Duck공격 Goose 0 : Duck이 공격Duck 승리 그러므로 짝수일 땐 Duck이 승리..