메가테라

[메가테라 루틴] 쓸 데 없는 생각말고 그냥 코딩 하기나 해~

jiwoosmile 2022. 8. 22. 13:06

 

이제 더 이상 다른 것에 신경 쓸 여유는 없다.

코딩에만 집중할 수 있는 환경을 만들어 두자.

출처: https://www.youtube.com/watch?v=1Wl3RCQqgPk

 

저에게만 해당되는 부분들이 있기 때문에 참고하시는 분들은 바꾸고 싶은 부분들을 자신에게 맞게 바꿔서 쓰시면 됩니다.

 

★ 효율을 높이기 위하여

 

필요한 사이트/ 도구 다 열어두기

  • github (내 코딩도장 레포지토리, 1mptera/web-03-java 레포지토리)
  • 소스트리 (코딩도장, web-03-java)
  • 메가테라 기수 대표 페이지 (즐겨찾기도 해두기)
    • 코딩도장 페이지
    • 해당 주차 페이지
  • 진도체크 시트
  • 내 블로그
  • 주말동안 정리해둔 노트들

 

한 주의 시작에 브랜치 미리 만들어두기

  • coding-dojo 폴더 들어가서
    • 브랜치 YYYYMMDD-<문제이름> 으로 월~목 과제 브랜치 만들어두기
  • assignment 폴더 들어가서
    • 브랜치 YYYYMMDD-강의반복과제-<내한글이름>으로 월~목 과제 브랜치 만들어두기

 

한 주의 시작에 폴더 미리 만들어두기

  • coding-dojo 폴더 안에 월화수목 코딩도장 문제에 대해
    • <문제이름>/java/YYYYMMDD/src/Solution.java 로 폴더구조 만들어두고 파일 만들어두기
  • assignment 폴더 안에
    • 월화수목 강의반복과제 폴더구조 4개 만들어두기 
      •  week00/강의반복과제/YYYYMMDD-<내한글이름>/src/<과제이름>.java
    • 퀘스트과제 폴더구조 다 만들어두기 (날짜는 나중에 수정하거나 하기)
      • week00/<과제이름>/YYYYMMDD-<내한글이름>/src/<과제이름>.java

 

금요일에 폴더 만들기

  • 브랜치 YYYYMMDD-<문제이름> 으로 만들기
  • <문제이름>/java/YYYYMMDD/src/Solution.java 로 폴더구조 만들어두고 파일 만들어두기

 

★ 해야될 모든 건 과제 시트를 참고하자.

★ 모든 과제는 끝내면 과제시트에 체크하고 링크 걸기.

★ TIL, 주간회고는 디스코드에도 링크 올리기.

★ 코드짜고 결과 동일한지 꼭 제!대!로! 다시 확인하기. 

★ 강의반복과제는 하나의 PR에 모든 과제를 커밋하기.

★ 퀘스트과제는 과제마다 PR 각각 올리기.

★ 강의반복과제는 과제이름이 강의반복과제.

★ 브랜치 생성 전에 upstream이나 origin fetch하고 upstream/main이나 origin/main기준으로 브랜치 만들기

 

작업 플로우

  1. 브랜치 생성해야 되는 경우 생성
  2. 과제 src폴더로 이동
  3. 코딩! 코딩!
  4. add commit push
  5. PR 올리기
  6. 과제시트에 링크걸기
  7. 다음 과제로 고고

 

코딩도장

  • 브랜치 YYYYMMDD-문제이름 으로 생성
  • 폴더는 문제이름/java/YYYYMMDD/src 구조로 만들기
  • 인텔리제이에서 src우클릭하고 Mark as source root 클릭
  • src 안에 Solution.java로 파일 만들기
  • 코딩
  • add commit push
  • PR 제목은 문제이름
  • 머지하고 과제시트에 링크 걸기
  • 30분 고민해도 답 안나오면 답을 확인하고 안 보고 해결하기

 

강의반복과제 & 퀘스트 과제

  • 브랜치는 YYYYMMDD-<과제이름>-<내한글이름> 으로 생성
  • 폴더는 week00/과제이름/YYYYMMDD-<내한글이름>/과제이름(3주차 이후)/src 구조로 만들기
  • 인텔리제이에서 src우클릭하고 Mark as source root 클릭
  • src 안에 과제이름으로 파일 만들기
  • 코딩
  • add commit push
  • PR 제목은 YYYYMMDD-<과제이름>-<내한글이름>

 

짝프로그래밍

interval timer(안드로이드 폰이라면 dreamspark님이 제작하신 어플이 괜찮다.)를 3분 간격으로 20세트 맞춰둔다.

 

  • 퀘스트 과제처럼 브랜치는 YYYYMMDD-<과제이름>-<한글이름1>-<한글이름2> 으로 생성
  • 폴더는 week00/과제이름/YYYYMMDD-<한글이름1>-<한글이름2>/(src나 프로젝트 root) 구조로 만들기
  • 인텔리제이에서 src우클릭하고 Mark as source root 클릭
  • src 안에 과제이름으로 파일 만들기
  • interval timer를 틀고 색이 바뀔 때마다 코드를 치는 사람과 코드를 봐주는 사람의 역할을 바꾸며 코딩
    • 작업 단위 쪼개기
    • 작게 해보고 되면 그 다음단계 실행
    • 진행하면서 서로 질문 많이 하기
      • 지금 쓰고 계신 게 뭔가요?
      • 이건 왜 쓰신건가요?
  • add commit push하는데,
    • 커밋메시지 쓸 때 본문 다 쓰면 두 줄 띄우고 현재 작업 중인 컴퓨터의 주인이 아닌 사람의 정보로 Co-authored-by: 깃헙아이디 <깃헙계정이메일> 을 써주자.
  • 시간 내에 완성이 안돼도 일단 PR올리기
  • 진도체크 시트 체크
  • 리팩토링 하기
    • 변수명 확인
  • 최종 리뷰
    • 이 부분은 이렇게 했으면 더 좋았을 것 같다.

 

주말 

  • 오자마자 타이머를 가동하고 바로 공부부터 시작하기
  • 한 주 동안 받은 코드리뷰 누적해서 정리
  • 개념노트 키워드 노션에 빼두기
  • 강의 시청
  • 강의 노트 작성
  • 강의대로 코드 쳐보기
  • 개념노트 정리 
  • +추가 키워드 개념노트에 정리
  • 강의노트, 개념노트 디스코드에 올리고 진도체크 시트에도 체크