SRP - 단일 책임 원칙
·
TIL
"어떤 클래스를 변경 해야 하는 이유는 오직 하나뿐 이어야 한다 - 로버트 C 마틴"  단일 책임 원칙 : SRP (Single Responsibility Principle)SRP는 객체는 단 하나의 책임만 가져야 한다는 원칙을 의미한다.여기서 '책임' 이라는 의미는 하나의 '기능 담당'으로 보면 된다.즉,하나의 클래스는 하나의 기능만을 담당하여 하나의 책임을 수행하는데 집중되어 있어야 한다는 의미다. 하나의 클래스에 여러 기능(책임)을 넣는 설계와 클래스를 분리하여 기능(책임)을 분산시키는 설계는 프로그램의 유지보수와 밀접한 관련이 있다. 클래스를 따로 분리하지 않고 하나의 클래스에 여러 기능(책임)을 넣는 설계를 한다면 클래스 내부에서 서로 다른 기능을 수행하는 코드끼리 강하게 결합될 가능성이 높아진..
[TIL] 9월 24일
·
프로그래머스
알고리즘삼총사https://school.programmers.co.kr/learn/courses/30/lessons/131705 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr문제설명풀이class Solution { public int solution(int[] number) { int answer = 0; //3중 for문을 돌리면서 각각 i번방 , i + 1번방, i + 2번방의 값들을 // 더한 값이 0이 나올때만 answer의 값을 증가시켜준다. for(int i = 0; i  최소 직사각형https://sch..
[TIL] 9월 23일
·
프로그래머스
알고리즘 문제햄버거 만들기https://school.programmers.co.kr/learn/courses/30/lessons/133502 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr문제 설명  처음에 짠 코드와 문제점import java.util.*;class Solution { public int solution(int[] ingredient) { StringBuilder str = new StringBuilder(Arrays.toString(ingredient).replaceAll("[^0-9]","")); return..
[TIL] 9월 20일
·
프로그래머스
프로그래머스 -   로또의 최고 순위와 최저 순위  문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/77484 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 설명 로또는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다.순위당첨내용16개 번호가 모두 일치 25개 번호가 일치 34개 번호가 일치 43개 번호가 일치 52개 번호가 일치6(낙첨)그 외 로또를 구매한 민우는 당첨 번호 발표일을 학수고대하고 있었습니다. 하지만, 민우의 동생..
[TIL] 오늘은 금요일 !
·
TIL
오늘은 계산기 2레벨을 만들었다.계산기 과제 2레벨의 요구사항은 클래스를 적용하여 기본적인 연산을 수행할 수 있는 계산기를 만드는거였다. 아래 클래스들처럼  operate()라는 추상화 메서드를 만든 추상화 클래스를각 클래스가 상속 받게하여 오버라이딩으로 각 연산기호에 맞는 연산을 하게 했다.// 연산 추상화 클래스public abstract class AbstOperation { public abstract double operate(double firstNumber, double secondNumber);}// 덧셈 연산public class AddOperation extends AbstOperation{ @Override public double operate(double first..
[TIL] 9월5일
·
프로그래머스
SQL 코드카타 - 대여횟수가 많은 자동차들의 월별 대여 횟수 구하기  CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블에서 대여 시작일을 기준으로 2022년 8월부터 2022년 10월까지 총 대여 횟수가 5회 이상인 자동차들에 대해서 해당 기간 동안의 월별 자동차 ID 별 총 대여 횟수(컬럼명: RECORDS) 리스트를 출력하는 SQL문을 작성해주세요. 결과는 월을 기준으로 오름차순 정렬하고, 월이 같다면 자동차 ID를 기준으로 내림차순 정렬해주세요. 특정 월의 총 대여 횟수가 0인 경우에는 결과에서 제외해주세요. 풀이먼저 대여 시작일을 기준으로 2022-08월부터 2022-10월까지 총 대여횟수가 5회 이상인 자동차들을 구한다.그 다음 해당 기간동안의 월별 자동차 ID 별 총 대여 ..
[TIL] 오늘
·
TIL
같이 공부하시는 분의 추천으로 벨로그에서 티스토리로 옮겼다 !! 오늘은 과제 발제식도 있고 강의도 마저 듣고 블로그도 옮기느라 정신 없는 하루였다!오늘  한 일알고리즘 & SQL 코드카타 문제 한개씩 풀기오늘 받은 개인과제 lv1 해보기 알고리즘 문제없는 숫자 더하기0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 나의 풀이 푸신분들중에 처음부터 answer에 1~10까지 모두 더한 45를 담고 for문을 돌면서 numbers에 들어있는 값들을 누적으로 빼는 로직을 짜신분도 있었는데 신기했다..!! SQL 코드카타  - 조회수가 가..