개발 공부 기록
article thumbnail
AI가 해주는 코드 리뷰, Gemini Code Assist 적용기
카테고리 없음 2025. 8. 6. 16:28

배경요즘 AI가 해주는 코딩도 늘어나고 있지만, 좀 더 효율적으로 도움 받을 수 있는 게 없을까? 하고 찾아보다가 Gemini가 코드 리뷰를 해준다는 것을 알게 되었어요. 이미 프로젝트에 적용한 지인의 추천을 받아 적용해보려고 합니다.Gemini를 도입하게 된 이유는 다음과 같아요.개인 프로젝트의 코드 리뷰의 어려움회사에 종속된 것도, 아직 출시한 제품도 아니기 때문에 코드 리뷰의 필요성이 떨어져 팀원간의 코드리뷰가 어려웠어요.무료 AI 코드 리뷰많은 코드 리뷰 AI가 있다고 하지만, Gemini 는 무료로 사용할 수 있어요.제일 큰 이유, 나도 코드 리뷰 받고 싶어!직전 회사에서 재직 중에 코드 리뷰를 받은 적이 드물었어요. 받더라도 코드의 통일성에 대한 부분이었고, 어떤 부분을 더 효율적으로 짤 수 ..

article thumbnail
LeetCode Word Break JAVA 풀이
알고리즘/LeetCode 2025. 6. 20. 16:54

https://leetcode.com/problems/word-break/문제s 를 스페이스(공백)으로 나누었을 때 나눠진 부분 단어들이 wordDict 리스트에 포함되어있다면 true, 아니라면 false 리턴제한사항풀이감이 전혀 안와서 블로그를 통해 답을 확인했다.DP를 이용해서 풀면 된다. boolean dp 를 s.length + 1 만큼 선언해준다.dp 배열의 값들은 해당 index 로 단어를 끊었을 때 wordDict 에 포함되면 True 처리를 한다. class Solution { public boolean wordBreak(String s, List wordDict) { int len = s.length(); boolean[] dp = new b..

article thumbnail
IntelliJ에서 실행버튼으로 개발환경 Docker 빠른 배포하기

저번 포스트를 쓰고나서 개발하다보니 깨달은 것이 있다docker compose 를 다 down 했다가 up 할 필요가 없다는 것! 괜히 mysql, redis도 같이 내렸다올렸다 했다docker 에 대한 이해 부족이었다 Spring의 container의 이미지만 갈아주면 되잖아~~~ 하고자 하는 방향개발 docker 환경에서 Spring container의 이미지만 갈아끼우기 + IntelliJ 실행 버튼으로 터미널 명령어 합쳐 진행하기버튼 하나만 누르면 개발 환경에 수정한 Spring 의 코드가 올라가길 바랐다문제 배경IntelliJ 의 Run/Debug Configuration 창에서1. Gradle -> clean bootJar 설정 : 이미지를 말기 위한 Jar 생성2. ShellScript ->..

article thumbnail
Docker 로 Spring Boot, MySQL 연동하기

Docker 를 개념적으로만 알고 실제로 띄워본 적이 드물어 이번 기회를 통해 제대로 알아보려고 함하고자 하는 방향도커를 이용하여 Spring Boot, MySQL, Redis 를 한번에 띄울 수 있도록 로컬 개발 환경 구축문제 배경1. Dockerfile 에는 JAVA 17 이미지를 기반으로 Spring 이미지를 말도록 구성2. docker-compose.yml 에는 spring-server, mysql, redis 이미지로 구성하고 server에 depends_on: mysql, redis3. "docker compose up --build" 진행 하였으나 mysql, redis 는 정상적으로 뜨고 server 는 안뜸DockerfileFROM openjdk:17-jdk-slimWORKDIR /ser..

프로그래머스 시소 짝꿍 자바 JAVA 풀이

https://school.programmers.co.kr/learn/courses/30/lessons/152996 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr처음엔 조합을 이용해서 해야하나 싶었는데 배열 길이가 너무 길어서 조합을 이용하면 안될 것 같았다..그래서 다른 방법을 고민해보다 계산을 이용해 할 수 있을 것 같았는데, 고민하다 정답을 보았다 정답을 이해한 과정- 각각 거리를 다르게 설정해야 하므로 무게에 대해 2/3, 1/2, 3/4 적용을 해야함- x * 3 = y * 2 라는 방정식이 통해야 하므로 x를 키값으로 하여 맵에 미리 다 저장해두고, y 값만 구해서 중복되는게 있는지 체크 (..

LeetCode Frog Jump JAVA 자바 풀이
알고리즘/LeetCode 2025. 4. 2. 23:44

https://leetcode.com/problems/frog-jump/description/ 어려워서 풀이를 보고 풀었다https://youtu.be/3FYCPlIx3YA?si=rQAet6BkcfpCtPlX해당 영상을 참고했습니다while 문 안에서 재귀를 도는 것이 포인트그리고 dp 를 이용하여 이미 계산된 lastIdx + curIdx 조합을 표시하여 기억한다 class Solution { int n; boolean[][] dp; public boolean canCross(int[] stones) { if(stones[1] != 1) return false; n = stones.length; dp = new boolean[n][n]..

프로그래머스 n진수 게임 자바 JAVA 풀이
카테고리 없음 2025. 3. 27. 13:01

https://school.programmers.co.kr/learn/courses/30/lessons/17687 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.krn 진법을 어떻게 만드는지 알면 된다m 명이 있을 때 t 개를 말해야 하므로 num(n진수 뭉치)의 길이가 m*t개가 될때까지 n진수 화 한다그리고 answer 에 더할 숫자들은 인덱스를 p -1 번부터 시작해 m 씩 더해주고, 길이가 t가 되었을 때 종료한다class Solution { public String solution(int n, int t, int m, int p) { String num = ""; ..

프로그래머스 파일명 정렬 JAVA 자바 풀이

https://school.programmers.co.kr/learn/courses/30/lessons/17686# 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr사실상 tail 은 존재하지 않아도 되는 문제숫자가 최대 5개라는 것을 알고 풀면 된다런타임 오류가 계속 나서 반례 하나로 대입해서 풀어봤더니 풀렸다 head 가 끝나는 지점 + 5 보다 number 의 길이가 길어지면 idx 를 head 지점 + 5 로 조정while 문 안에서 계속 idx ++ 하다보면 length 만큼 가기때문에 break 문 넣어줌 import java.util.*;class File { String head..