본문 바로가기

전체 글137

나도 코드 리뷰 좀 해보자! 안녕하세요. 방구석 개발자 입니다. 우리회사는 코드리뷰 문화가 없어요...😂 그렇지만 저는 코드리뷰를 하고 싶었어요. 그래서 https://shinsunyoung.tistory.com/92 포스팅 글을 보고 용기내어 동료개발자에게 코드 리뷰를 해보자고 했습니다. 다행스럽게 흔쾌히 같이 하자고 하여 이번 프로젝트에서 코드리뷰를 시도 해보았어요.👍 현재 프로젝트는 폐쇄망 + SVN 을 사용했기 때문에 git처럼 댓글형식으로 리뷰를 하진 못하였고 엑셀을 이용하여 진행했어요. 무엇을 얻었을까? 좋았던 점 지켜본다는 생각에 코드를 가독성 좋게 누군가 읽기 쉽게 짜려고 노력하게 되었어요. 제가 놓친 부분들을 짚어주워서 에러를 방지 할 수도 있었어요. 궁금한 점들을 쉽게 물어보고 또한 질문 받은 것들을 다시 정리 하.. 2021. 9. 20.
'리팩토링'을 읽고 나서 안녕하세요. 방구석개발자입니다. 여자친구가 리팩토링 책을 1판 그 귀하다는 책을 구하였고 저도 접하게 되어 읽었습니다. 좋은 코드를 만들고 싶었는데 지침은 충분히 될 수 있을 것 같습니다. 소감 chapter01 리팩토링 할만한 예제를 먼저 보여주고 리팩토링 하는 과정을 차근차근 설명해줍니다. 저도 과정을 같이 따라해보았는데요.(github_url) 맛보기 예제만으로도 좋은 리팩토링 기법을 알려줘서 어느정도 감을 잡을 수 있습니다. 리팩토링이란? 리팩토링이란 겉으로 드러나는 기능을 그대로 둔채 , 알아보기 쉽고 수정하기 간편하게 소프트웨어 내부를 수정하는 작업이다. 리팩토링의 목적은 소프트웨어를 더 이해하기 쉽고 수정하기 쉽게 만드는 것이다. 리팩토링을 수행하면 겉으로 드러나는 기능에 거의 또는 아예 영.. 2021. 9. 12.
백준 5014 스타트링크 자바 5014 스타트링크 문제 보러가기 5014번: 스타트링크 첫째 줄에 F, S, G, U, D가 주어진다. (1 ≤ S, G ≤ F ≤ 1000000, 0 ≤ U, D ≤ 1000000) 건물은 1층부터 시작하고, 가장 높은 층은 F층이다. www.acmicpc.net 문제 설명 자바 코드 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.Arrays; import java.util.LinkedList; import java.util.Queue; public class Main { static int visited[]; public static void main(String[] args) throws Excep.. 2021. 8. 17.
프로그래머스 상호 평가 자바 https://programmers.co.kr/learn/courses/30/lessons/83201 코딩테스트 연습 - 2주차 [[100,90,98,88,65],[50,45,99,85,77],[47,88,95,80,67],[61,57,100,80,65],[24,90,94,75,65]] "FBABD" [[70,49,90],[68,50,38],[73,31,100]] "CFD" programmers.co.kr 자바 코드 class Solution { public String solution(int[][] scores) { StringBuilder answer = new StringBuilder(); for(int i=0;i=80){ return "B"; }else if(score>=70){ return "C.. 2021. 8. 10.
백준 7576 토마토 자바 7576 토마토 문제 보러가기 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 문제 설명 자바 코드 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; public class Main { static int n, m; static int[] dx = {0, 0, -1, 1}; .. 2021. 8. 4.
ThreadPoolTaskScheduler를 이용하여 자바 스케줄러 구현 및 강제종료 구현 안녕하세요. 방구석 개발자입니다. 현재 진행중인 프로젝트에서 원하는 시간대 실행되는 배치를 등록하고 실행하는 기능을 만들어야 돼서 ThreadPoolTaskScheduler를 이용하여 구현하였는데요. ThreadPoolTaskScheduler가 뭔지 또 어떻게 사용되는지 알아보도록 하겠습니다. ThreadPoolTaskScheduler란 ThreadPoolTaskScheduler는 태스크실행 및 스케줄링에 사용되는 스프링 라이브러리 입니다. 배치 관리 할때 Thread를 개발자가 직접 제어하지 않고 실행하고 싶은 Task와 시간을 Pool에 넣습니다.그러면 ThreadPoolTaskScheduler에서 제어하여 해당 시간에 맞춰서 Thread를 생성 및 실행 시키고 종료 까지 해줍니다. 스프링 공식 문서.. 2021. 8. 2.
백준 1149 RGB거리 자바 1149 RGB거리 문제 보러가기 1149번: RGB거리 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net 문제 설명 자바 코드 import java.util.*; public class Main{ public static void main(String[] args) throws Exception { Scanner scanner=new Scanner(System.in); int n = scanner.nextInt(); int color[][]=new int[3][n+1]; int result[][]=new int.. 2021. 7. 29.
노마드 코더 니꼴라스와 만드는 진짜 리액트 앱 공부 안녕하세요. 방구석 개발자입니다. 노마드 코더 니꼴라스와 만드는 진짜 리액트 앱 책을 보면서 리액트를 공부했습니다. 공부한 것들을 정리 해보겠습니다. 리액트 기본 동작 원리 자바스크립트 코드를 리액트가 해석 후 html로 끼워 넣는다. ex) index.js 를 리액트가 해석 한다 -> index.html에 끼워 넣는다. 리액트 기초 개념 리액트는 반드시 알아야 할 기초 개념이 있다. 바로 컴포넌트, JSX, props 이다. 이 3가지 개념을 꼭 알아야 한다. 컴포넌트 //App.js import React from 'react' function App(){ return ( Hello ); } 코드에서 App컴포넌트를 정의 했고 App컴포넌트는 HTML을 반환하고 있다. //index.js import.. 2021. 7. 25.
백준 1932 정수 삼각형 자바 1932 정수 삼각형 문제 보러가기 1932번: 정수 삼각형 첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다. www.acmicpc.net 문제 설명 자바 코드 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.pa.. 2021. 7. 14.
백준 2579 계단 오르기 자바 계단 오르기 문제 보러가기 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net 문제 설명 자바 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.. 2021. 7. 14.
백준 1463 1로 만들기 자바 1로 만들기 문제 보러가기 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 문제 설명 자바 코드 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.LinkedList; public class Main { static int []isVisited; public static void main(String[] args) throws Exception{ BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); int n=Integer.parseInt(br.readL.. 2021. 7. 13.
백준 1003 피보나치 함수 자바 피보나치 함수 문제 보러가기 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net 문제 설명 자바 코드 import java.io.BufferedReader; import java.io.InputStreamReader; public class Main { static int[] result=new int[41]; public static void main(String[] args) throws Exception{ BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); int testCase=Integer.parseInt(br.readLin.. 2021. 7. 13.
반응형