데브 코스

    [TIL] DAY 13 & 14

    오늘 할 일 과제 리뷰 수정 마무리 토스 코딩 테스트 객체지향, 함수형 인터페이스 복습 디자인 패턴 수정 실전 자바 책 읽기 TIL 작성 TIL 1. Procedure MySQL 서버에 저장되는 쿼리 함수처럼 인자를 넘겨서 사용이 가능하다. 반환값은 SELECT문의 결과이다. if문과 loop를 사용한 프로그래밍이 가능하다. 디버깅이 힘들고, 서버의 부하를 증가시킬 수도 있다. CREATE PROCEDURE name(parameter list) BEGIN select * from table; END 2. Trigger INSERT, DELETE, UPDATE 실행 전이나 후에 원하는 작업을 수행하도록 한다. 실행 시점을 지정해 해당 테이블에 위 작업이 진행되면 실행되도록 한다! create trigger..

    [TIL] DAY 12

    오늘 할 일 강의 듣기 강의 정리하기 SQL 고득점 KIT 다 풀고 PR 하기 과제 피드백 수정 TIL 작성하기 집 천장 수리하기..(기사분이 안 오셨다ㅠ) TIL 1. 트랜잭션 한 번의 작업으로 실행되어야 하는 SQL들을 묶어서 처리하는 방법으로 DDL이나 DML에서 사용된다. SELECT에서는 사용할 이유가 없다. Ex) 계좌이체 과정에서 인출이 성공했지만 입금이 실패한다면?! -> 한쪽은 굉장히 억울할 것이다... -> 이러한 과정은 한 번에 처리하도록 트랜잭션을 걸어야 한다! 2. autocommit (1) True : 트랜잭션 사용 가능 모든 레코드 작업이 바로 DB에 쓰인다. -> commit 한다 (2) False : 트랜잭션 사용 불가능 모든 레코드 작업이 commit이 호출될 때까지 호출..

    [TIL] DAY 11

    오늘 할 일 강의 듣기 강의 정리하기 실전 자바 책 정리 팀 스터디 과제 피드백 수정 시작 TIL 작성하기 TIL 1. OCP(개방/폐쇄 원칙) 인터페이스를 추가함으로써 수정이 필요한 코드를 직접 바꾸지 않고 메소드나 클래스의 동작을 바꿀 수 있다. 새로운 구현을 인수로 전달하기 때문에 확장성이 개방된다. 2. Notification(노티피케이션) 패턴 미확인 예외가 너무 많은 상황에서 오류를 수집하고 각 상황에 맞는 해결책을 제공한다. 현업에서는 로그로 대부분의 오류를 확인하기 때문에 사용하지 않는다고 한다. 3. 예외 사용 가이드라인 예외를 무시하면 안된다. 일반적인 예외는 잡지 않아도 된다. 예외를 문서화해야 한다. 내일 할 일 강의 듣기 강의 정리하기 SQL 고득점 KIT 다 풀고 PR 하기 과제..

    [TIL] DAY 10

    오늘 할 일 강의 듣기 강의 정리하기 SQL 레벨업 마저 정리하기 SQL 스터디 실전 자바 책 읽기 및 정리(정리는 내일!) TIL 작성하기 TIL 1. MySQL (1) limit 결괏값 중 상단 지정 개수의 데이터만 가져오고 싶을 때 사용한다. ex) 상단 1개만 가져오는 경우 select * from table limit(1); (2) count 레코드 수 카운트할 때 사용한다. NULL은 카운트에 포함시키지 않는다. count(컬럼) : 해당 컬럼 레코드 개수 카운트한다. select count(1) from table; count(NULL) : 조건에 NULL이 들어가 탐색하지 않는다. count(value) : NULL이 아닌 경우 탐색한다. select count(value) from tab..

    [TIL] DAY 9

    오늘 할 일 강의 듣기 강의 정리하기 DB 책 읽고 정리하기 TIL 작성하기 TIL 1. MySQL RDBMS중 하나로 많은 사람들이 아무 문제없이 사용해서 전부다 무료인줄 알았지만, 유료 버전인 Enterprise가 있다는 것을 알았다. 한 대의 서버만 사용 가능하기 때문에 용량 증대가 필요할 때는 직접 서버에 CPU와 메모리를 추가하는 Scale-Up 방식을 사용한다. 도커에 MySQL을 처음 설치해 보았는데, 윈도우에서 실행하려면 기타 설정들이 필요하다. 우선, wsl2를 사용하기 위해 우분투를 설치해야 하고, 도커에 MySQL Image를 다운받아야 한다. * Docker Image : 패키지를 파일 시스템 형태로 만든 것. 그 후, 임시 비밀번호를 찾아내 MySQL을 실행시킨다. 비밀번호를 변경..

    [TIL] DAY 8

    오늘 할 일 실전 자바 소프트웨어 개발 1, 2장 정리하기 강의 듣기 강의 정리하기 함수형 인터페이스 정리하기(작성 중) 팀 스터디 진행하기 TIL 작성하기 TIL 1. 응집도와 결합도 클래스나 메소드의 책임이 서로 얼마나 강하게 엮여 있는지가 응집도인데, 만약 클래스의 목적에 관련 없는 메소드가 있다면 응집도가 낮아지는 것이다. 더 쉽게 이해하고, 유지 보수하기 위해서는 응집도가 높아지도록 리팩토링해야 한다. 반대로 결합도는 적은 외부 클래스를 참조해 낮추어야 한다. 이 과정에서 서로의 연관성을 낮추기 위해 중간에 인터페이스를 추가한다고 한다. 그리고, 결합도를 낮추는 방법에 인터페이스뿐만 아니라 팩토리 패턴을 적용하는 방법이 있다고 한다. 2. 디자인 패턴 적용하기 번개식으로 멘토님이 전략 패턴과 싱..

    [TIL] Day 7

    오늘 할 일 함수형 인터페이스 정리하기(진행 중) 실전 자바 소프트웨어 개발 1, 2장 읽기 TIL 작성하기 TIL 1. 자바 책 스터디 준비 하나의 책을 다 같이 읽고 스터디를 진행하는 것이 처음이다. 아직 어떤 스타일로 정리하고 발표를 진행하는지 감이 오지 않아 책을 정독하고 코드를 직접 작성해보았다. 처음 한 클래스에 모든 기능을 구현했을 때와 다르게 점점 변해가는 코드를 보는 것이 아직은 신기하다. 객체지향이라는 것이 무엇인지 조금씩 몸소 깨닫고 있다. 정리는 아직 다 진행하지 못했는데 내일 남은 분량을 마무리해 스터디에 참여해야겠다. 2. GIT 과제를 멘토님께 PR 하기 전 다른 분들이 어떻게 했는지와 PR 방법 영상을 계속 찾아보고 시청했다. 그렇게 많은 참고를 통해 PR을 했고, 제대로 되..

    [TIL] Day 6

    데브 코스 과정에서 맞이하는 첫 주말이다. 뭔가 의욕이 넘쳤지만, 정작 많은 것을 하지는 못했다. 내일 시간이 별로 없을 텐데 아침과 저녁에 틈나는 대로 부족한 부분을 메꾸어야겠다. 오늘 할 일 오늘 강의 다시 듣기 DB 스터디(SQL 문제 풀기) 복습하며 인터페이스 정리하기 Build Tool 조사하기 TIL 작성하기 알고리즘 1문제 풀기 TIL 1. DB 팀 스터디를 시작한 지 얼마 안됐기 때문에 간단하게 SQL 코테 문제를 풀고 리뷰하는 시간을 가졌다. 개인적으로 난이도가 낮았다고 느꼈기 때문에 모든 팀원들의 코드가 같을 것이라고 생각했다. 하지만, 간단한 쿼리문임에도 불구하고 다르게 작성한 코드를 맞이할 수 있었다. 그만큼 공부할 게 더 있는 것이니 DB도 공부를 차차 해나가야겠다. 오늘 기본적인..