1. 설계위의 설계대로 구현을 했다. 코드 리뷰를 해주시는 분들은 여기까지만 보셔도 됩니다.(감사합니다...꾸벅..) 2. 깨달은 것들(공통 피드백 적용)2-1. 전략 패턴은 if-else를 대신할 수 있다.public class CalculationStrategySelector { private final CalculationStrategy defaultDelimiterCalculationStrategy; private final CalculationStrategy defatulWithCustomDelimiterCalculationStrategy; public CalculationStrategySelector(CalculationStrategy defaultDelimiterCalcu..
제목과 본문을 한 줄 띄워 분리하기제목은 한글 30자 이내로(총 50자 이내) 요약 문장제목 끝에 . 금지제목은 명령조로본문은 72자마다 줄 바꾸기본문은 어떻게보다 무엇을, 왜에 맞춰 작성하기 예시들 클래스 완성feat(패키지명): 클래스 {클래스명} 구현- 클래스에 대 설명 여러 클래스 완성feat: 여러 클래스 {클래스명1}, {클래스명2}, {클래스명3} 구현- 클래스1에 대한 설명- 클래스2 설명- 클래스3 설명- 한 번에 클래스를 만든 이유(클래스가 돌아가는 과정) 간략히 설명 메소드 추가feat(클래스명): {메소드명}을 {클래스}에 구현-메소드 설명 메소드나 클래스 삭제refactor: 메소드/클래스 {메소드명}/{클래스명} 삭제-이유 설명 리팩터링refactor: 간단 주제(아무렇게나 잘 ..
1. 주문자, 캐시어, 바리스타의 관계주문자-캐시어를 모른다.(그저 메뉴를 파라미터로 호출한다.)-캐시어가 누가 되든 상관없다.(캐시어는 인터페이스를 구현하는 여러 객체이다.)-커피만 return해주면 된다.캐시어-바리스타를 모른다.-바리스타가 누가되든 상관없다.-커피만 return해주면 된다.바리스타-파라미터를 보고 return해주면 된다.-커피 제조는 바리스타마다 자신만의 독특한 방법도 가능(다형성, 즉, 인터페이스 사용) 2. 객체의 역할-여러 객체가 동일한 역할을 수행할 수 있다.(인터페이스, 다형성)-역할은 대체 가능성을 의미한다.(인터페이스, 다형성)-각 객체는 책임을 수행하는 방법을 자율적으로 선택할 수 있다.(메서드 오버로딩)-하나의 객체가 동시에 여러 역할을 수행할 수 있다.(메서드 오버..
영어로 되어있어서 해석하기 힘들었다.... 기본 구조(): //주제띄어쓰기 //본문띄어쓰기 //푸터 주제 작성법-feat : 기능 추가-fix : 버그 수정-docs : 문서 추가, 수정-style : 개행, 들여쓰기, 공백 등-refactor : 리팩토링-test : 테스트 코드 추가, 변경-chore : 배포, 빌드-init : 프로젝트 초기 설정-BREAKING CHANGE : 브레이킹 체인지~ 범위를 추가한다. 예를 들어, 클래스명이나, 기능 등 다 쓸 수 있음 ㅇㅇ(부가설..
1. 오류 코드를 정의해 사용하는 것보다는, 예외를 사용해야 한다.2. TRY-CATCH문을 적극 사용하자.import java.util.Scanner;public class Calculator { public static void main(String[] args) { try { // 전체 흐름을 관리하는 메서드 processCalculator(); } catch (Exception e) { //에러 처리(프로그램 종료 등등) } } // 전체 계산 과정 관리 public static void processCalculator() throws Exception { String..
깃이란?버전 관리 시스템으로, 버전 관리, 협업 관리를 도와준다. 깃의 관리 영역1. Working Directory(Local Repository) : 내가 작업하는 공간. 한마디로 내 컴퓨터의 폴더를 뜻함.2. Staging Area : 수정 이력을 기록할 파일을 대기시키는 장소. 깃의 관리 영역(add 시 저장되는 곳)3. Repository : Staging Area에서 대기 중이던 파일들을 최종적으로 기록하는 장소. 깃의 관리 영역 파일 권한소유자 || 소유자 그룹 || 방문자rwx rwx rwxr: read 4w: write 2x: 실행 1666 rw rw rw 777 rwx rwx rwx 등등현재 HEAD는 Second Upload한 ..
요구(요구: )와 해야할 것(==>)으로 정리1. 학습 목표요구: Git, GitHub, IDE 등 실제 개발을 위한 환경에 익숙해진다.요구: 교육 분야에 맞는 프로그래밍 언어를 사용하여 간단한 문제를 해결한다.==> Git, GitHub에 대해 공부하고, 어떠한 요구사항이 있는지 정리해야한다.==> IDE를 이용하여 어떠한 것을 해야하는지 정리해야한다.==> java를 사용하여 간단한 문제를 해결할때, 여러가지 생각해 볼 것들을 정리한다. 2. 진행 방식요구: 미션은 과제 진행 요구 사항, 기능 요구 사항, 프로그래밍 요구 사항 세 가지로 구성되어 있다.요구: 기능 구현 전 기능 목록을 만들고, 기능 단위로 커밋==> 어디에 기능 목록을 만드는지, 확인하고, 기능 단위를 어떻게 나누는지 정리한다.요구:..
어제는 일요일이라 교회에 갔다. 요즘, 여러가지로 고민하고 있던 것이 있었는데, 디모데후서 1장 7절을 보면서 마음을 추스리고 있는 중이었다. 교회에서는 마가복음 5장을 주제로 설교를 진행하였다. 여기서 예수님께서 죽은 자를 살리는 기적을 볼 수 있었다. 믿음을 통해 다시 살리는 기적인 것이다. 나는 이러한 말씀을 듣고, 디모데후서 1장 7절을 떠올렸다. 하나님께서 우리에게 주신 것은 두려워하는 마음이 아니다. 믿음으로 걸어감에 있어서 두려움은 없는 것이다. 그저 하나님의 계획 속에서 다시 태어나며, 감사함에 현재 상황에 충실하는 것이 옳다고 느꼈다. 성경을 좀 더 읽어서 하나님의 계획을 더 알고 싶다고 생각했다. 생각 뿐만아니라, 실천에도 옮겨야지...어쨌튼 우아한테크코스 자소서를 통한 고민 이후로 살..