오늘 한일

교육 기관 알아보기

백엔드 교육기관은 가을 시즌까지 기다려야

  • 프론트 분야
    • 코드스테이츠 5월
    • 바닐라코딩이 7월
  • 특정 분야가 아닌 교육 기관
    • 구공팩토리 4월
  • 멘토링 이라도?

그래프 문제 사이클 제거

프로그래머스: 사이클 제거 문제를 풀다가 1시간 넘게 걸려서 포기헀다. 이 문제는 참고할만한 코드가 딱히 없다.

알고리즘 공부하는 방법을 바꿔야 할까?

  • 보유 중인 책
    • 코딩인터뷰 완전분석
    • 다양한 에제로 학습하는 데이터 구조와 알고리즘 for Java
      • 이거 번역본 진짜 절대 사지 말기를....
      • 말이 자바지 그냥 c 코드를 그대로 java로 옮긴 것처럼 보임
  • 종만북이 좋다던데....?
    • PS 시작하기
      • 백준에서 주요 카테고리 문제 다 풀어보기
        • 그래프, bfs, dfs, 이분 탐색, 분할 정복, 그리디, 완전탐색
        • 4주 ~ 5주 기간 내에 다 푸는 것을 목표
        • 단기간에 몰아서 왕창 풀어 볼 수록 얻는 양이 많아 짐
      • 한 문제에서 1시간 이상 쓰지 말기
      • 다른 사람의 코드와 비교하기
        • 전혀 다른 구조를 작성한 사람의 코드
        • 이런 방식으로도 가능하구나 정도
      • 링크에 언급된 백준 문제를 다 풀어봤으면 종만북 시작하기
        • 1권 마지막 수치해석부터 읽는 것을 추천
        • 기하는 skip
        • DP 최적화 내용 어려우면 skip 후 나중에 읽어보기
        • 2권은 1권을 다 보고나서 읽기
        • 종만북 보면서 알고스팟 문제 다 풀어보기

백준 -> 종만북 -> 코딩인터뷰 완전분석

자동차경주게임 3단계 merge

콘솔에서 웹 UI로 변경 단계인 3단계 피드백 반영 완로.

피드백을 반영하면서 단게별 자동차를 복사하는 기능을 복사 생성자 -> cloneable, clone -> 정적 메소드 -> 인스턴스 메소드 순으로 변경

로또 1단계 피드백 반영

접근 제어자

기능 구현에 집중하다보니 특별한 이유가 없으면 private으로 지정해야 하는 것을 까먹고 넘어가는 경우가 있다.

숫자 구분자

이건 몰랐던 부분인데, 2000000000 -> 2_000_000_000 처럼 단위 구분자를 넣을 수 있다.

보통 TDD로 개발을 진행하면서 테스트를 작성하다가 다른 클래스가 필요해질 때는 현재 작성중인 클래스 개발을 멈추고 다른 클래스를 진행하나요?

Red-Green-Refactor 리듬으로 개발하면서 새로운 클래스가 필요하다고 느끼는건 Green으로 넘어가는 과정에서 리팩토링을 같이 병행하고 있기 때문이라고 생각한다고 말씀하셨다.

오늘 느낀점

알고리즘 공부법을 찾아보면서 공부 계획과 실천 얼마나 중요한지 느꼈다.

테스트 가능한 코드를 작성하는 방법에 대한 감이 조금씩 잡히는 것 같다.

내일 할일

  • PS 시작하기에 언급된 백준 문제 풀이 시작
  • 로또게임 1단게 피드백 반영