과제리뷰 7

[CH5.개인과제] 일정 관리 앱 (JPA)

[에러 X, 고민 사항]1. this.name = name; / 클래스.getName();발단 : 특정 테이블의 컬럼값들을 사용할 때전개 : entity의 생성자 구현할 경우나 테이블의 컬럼들을 일부 불러오는 부분을 구현하고자 하였습니다.위기 : parameter로 받을 때 (1)객체로 받아서 getter 메서드를 사용할 지 아니면 (2)각 컬럼들을 파라미터로 불러올지 고민이었습니다.절정 : 컬럼 일부를 가져올 경우 그냥 각 컬럼들을 파라미터로 하고, 대부분의 컬럼을 사용할 경우 객체로 받도록 구현했습니다.결말 : 아직 어떤 상황에서 뭘 쓰는 게 적절할 지 잘 모르겠어서 이 부분을 좀 더 공부해야 할 것 같습니다. 2. UserService의 login 메서드에서 findByEmailAndPassword..

과제리뷰 2024.11.15

[CH4개인과제] 일정 관리 앱 서버

1. JDBC templete 인식 오류발단 : 구현한 기능을 데이터베이스와 연동하는 과정전개 : JDBC templete을 적용하고자 했습니다.위기 : JDBC 인식 오류가 발생하였습니다.절정 : JDBC 의존성 누락 문제였습니다. 아래와 같은 코드를 추가하지 않아 패키지를 인식하지 못하던 문제였습니다.build.gradle 에 추가implementation 'mysql:mysql-connector-java:8.0.33'implementation 'org.springframework.boot:spring-boot-starter-data-jdbc'결말 : 작성 후 제대로 JDBC templete을 적용할 수 있었습니다. 2. Request - Response 구현의 구조화발단 : 시작 전에 코드를 구조화..

과제리뷰 2024.11.08

[숫자야구] 피드백 이후 개선

1. if문 {} 작성1) 컨벤션 준수하기- 한 줄만 작성해도 괄호{}를 작성하는 습관 들이기2) 적용 - strike/ball/out 출력//수정 전if (strike == 0 && ball == 0) System.out.print("out");if (strike != 0) System.out.print(strike + " strike ");if (ball != 0) System.out.print(ball + " ball ");//수정 후if ((strike == 0)&&(ball == 0)) { System.out.print("out");}if (strike != 0) { System.out.print(strike+" strike ");}if (ball != 0) { System.ou..

과제리뷰 2024.10.29

[계산기] 피드백 이후 개선

1. if 문 / try-catch 문 차이 완벽 이해1) 의문 사항 :  try-catch가 아닌 if 문으로도 해결할 수 있는 예외일 경우 if문으로 해도 괜찮은지2) 설명 :  (1) if 문-  예상이 가능한 조건을 처리- EX) 나눗셈을 진행할 때 분모가 0이면 안되는 경우 (당연하게도 예상 가능한 예외임)   (2) try-catch 문-  예상하지 못하거나 예외를 미리 체크할 수 없는 상황- EX) 우리가 사용자에게 입력을 받을 때 발생할 수 있는 입출력 오류 같은 경우에는 미리 체크할 수 없기 때문에 try-catch로 처리   (3) 표준 예외 처리InputMismatchException : 정수로 입력해야 하는데 문자를 입력한 경우 예외 발생ArithmeticException : 정수를..

과제리뷰 2024.10.29

[CH3개인과제] 숫자 야구

1) LV0 - 시간/공간 효율, 가독성 상관 없이 구현하기 (Random 클래스, 정적배열) 발단 : 정답을 맞추기 위한 세자리 수를 입력받는 부분 구현전개 : for문으로 세 자리를 각각 입력받았습니다.위기 : 한 번에 입력하는 게 효율적인데, 한 번에 입력할 경우 인식되지 않았습니다.절정 : 그래서 세자리 수인 숫자를 입력받고 각각을 % 연산을 통해 배열에 저장했습니다.결말 : 한 번에 세자리 수를 입력받아 결과를 출력할 수 있었습니다.//수정 전for (int i=0;i//수정 후int input = sc.nextInt();for (int i=DIGITS-1;i>=0;i--){ record[i] = input%10; input /= 10;} 2) LV123 - 기본 게임 구현 (Rand..

과제리뷰 2024.10.23

[CH2개인과제] 계산기

이슈 사항들1)발단 : 연산자 입력부 구현전개 : 코드 실행 시에 연산자를 입력하고 연산이 수행되었습니다.위기 : 연산자 입력 받고 나서 연산 수행되고 종료 여부 묻는 부분이 넘어갔습니다.절정 : 마지막에 연산자 입력 받고 나서 의 엔터를 처리했습니다. => 입력 받고 sc.nextLine();을 추가결말 : 해당 오류가 해소되었습니다. 2)발단: while 문으로 무한 반복 코드 구현 전개 : 코드 수행 후 종료하려면 exit을 입력받도록 했습니다.위기 : 계속하려면 엔터를 입력하는 게 뭔가 개선하고 싶은 부분이었습니다.절정 : exit 입력받을 시에 종료하고 아닐 시에 뭘 할지 고민하다가 다음과 같이 작성했습니다.결말 : 직관적이게 적어서 입력이 명확해진 것 같습니다.System.out.println..

과제리뷰 2024.10.16

[CH1팀과제] 팀소개 페이지 프로젝트

* 실습 환경 : VSCode, 웹브라우저(Chrome), Firebase* 활동 기간 : 09.30. ~ 10.07. 1. 와이어 프레임1) 기존 와이어프레임2) 페이지 추가2. 내가 구현한 것1) 멤버 소개 페이지 템플릿(member.html)(1) 상단 구현(header) : 팀 소개 버튼과 멤버 소개 버튼은 클릭 시 해당 페이지로 이동(2) 등록 박스(postingbox) : 사진 링크, 이름, MBTI, 등 정보 입력 후 등록 버튼 클릭 시 카드 생성(3) 멤버 카드(membercards) : 수정 버튼(연필), 삭제 버튼(휴지통) 기호 넣고, 코딩'치킨'이기에 달걀 그림으로 디자인. 가시성 높이기 위해 줄(line) 추가 2) 멤버 상세 페이지(memdetail.html)(1) 상세 페이지 영..

과제리뷰 2024.10.07