ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 우아한 테크코스 2기 프리코스 2주차 후기
    우아한 테크코스/기타 2019. 12. 12. 22:52
    반응형

    진행하며 느낀 점

    내가 이걸 구현할 수 있을까?

     2주차 과제를 받았을 때, 처음 든 생각은 '과연 내가 이걸 구현할 수 있는 걸까?'였다. '구현할 수 없어!'는 아니었지만, 어디부터 구현해야 하는지 막막했고, 이걸 내가 할 수 있는 수준인지 생각을 할 정도로 겁을 먹어버렸다.

     

     하지만 기능을 먼저 정리하고, 그 기능을 나눠보고, 나뉜 기능을 하나씩 차례로 적용하면서 '아! 이건 나도 할 수 있구나. 그냥 기능이 조금 더 많아진 거구나!'라는 생각을 하게 되었고, 결국 나누고 나니 지난 주차의 과제와 크게 난이도가 다르지 않았다. 코딩에 가속도가 붙으면서 기분이 너무 좋아졌다. 

     

     먼저 기능을 정리하고 구현하면 훨씬 체계적이고 쉽게 접근할 수 있다는 것을 깨달았다. 2주차 과제도 잘 해내 뿌듯했다.

     

    모든 클래스, 메서드, 변수에 무작정 주석을 달지 말자

     1주차 때는 주석을 다 달아두었는데, 주석을 다는 것보다 명명을 잘하여 직관적으로 보이는 것이 훨씬 좋다는 것을 피드백을 통해 알게 되어, 명명 시 조금 더 생각하게 되었다.

     

    메서드가 15줄을 넘지 않을 것

     메서드가 15줄이 넘지 않도록 기능을 나누고 또 나누어 메서드를 잘게 쪼갰다. 사실 어디까지 쪼개는 것이 좋은지는 잘 모르겠다. '너무 잘게 쪼개면 가독성이나 관리가 나쁘지 않을까'란 생각도 들었다. 이 부분은 조금 더 해봐야 할 것 같다.

     

     하지만 메서드가 짧으니까 메서드명과 더불어 코드를 다시 볼 때 참 좋았다. 빠르게 내용이 이해가 되었기 때문이다.

     

    후기

    걱정에서 확신으로

     직장을 다니면서, 우아한 테크코스에 꿈을 가지고 지원했는데, 지원하고 나서도 많은 고민을 했었다. "금전적 여유가 있지 않은데, 과연 이게 옳은 걸까?", "너무 몽상가적인 성향인 걸까?" 부터 시작하여 "내가 하고 싶은 것이 맞는 걸까?", "이 선택이 옳은 걸까?", "너무 뜬구름 잡는 비현실적인 생각이 아니었을까?" 등의 걱정을 하였다.

     

     하지만 프리코스를 통해서 이제 겨우 두 번째 과제지만 내가 짜는 짧은 코드가 달라짐을 느끼고, 거기서 재미를 느끼고 있다. 과제를 미루지 않고 주말에 열심히 하는 내가 있다. 이런 나를 위해 1년, 아니 10개월을 투자하는 것은 정말 아깝지 않다고 확신이 들었다.

     

     마지막 과제도 열심히 하고, 오프라인 테스트도 잘 봐서 꼭 프로그램에 참여하고 싶다. 한 발씩 앞으로 나아가자.

     

    피드백 후 느낀 점

     2주차 피드백을 받은 후 느낀 점

     

     기능 목록을 작성할 때 구현을 너무 상세하게 작성하지 말기. 이 부분은 지난번에도 피드백 받았었는데 작성하다 보니 또 너무 자세하게 구현을 서술해놓아서 3주차 때는 꼭 유의하도록 해야겠다.

     

     값을 하드 코딩하지 말기. 이 부분도 알고는 있었는데, 너무 당연한 숫자 값이라고 생각한 값들을 하드 코딩해버렸다. 이 부분도 다시 생각해봐야겠다.

     

     Java API 적극적으로 활용하기 & 배열 대신 Java Collection을 사용하기. Collection을 이용하면 Java API를 많이 이용할 수 있고, API를 이용하면 복잡한 구현을 하지 않아도 되므로 적극적으로 활용하자.

     

     객체에 메시지를 보내기. 이 부분은 조금 어렵지만, get이 아닌 파라미터로 요청 사항을 보내라는 것 같다. 조금 더 공부해봐야 한다.

     

     필드(인스턴스 변수)의 수를 줄이기 위해 노력하기. 중복이나 불필요한 필드를 제거하여, 복잡도와 버그 발생 가능성을 낮춰야 한다.

     

     비즈니스 로직과 UI 로직을 분리하기. 단일 책임 원칙에 어긋나므로 꼭 분리해보자.

     

     메서드 라인 신경 쓰기. 공백도 라인이다. 최대한 기능을 많이 쪼개봐야겠다.

     

     git을 통해 관리할 자원에 대해서 고려하기. 불필요한 자원까지 관리하지 않도록 신경을 써봐야겠다.

     

     그 외에 축약하지 말기. Commit 메시지에 #번호를 추가하지 말기. 발생할 수 있는 예외케이스에 대해 고민하기. 주석은 꼭 필요한 경우에만 남기기. Pull Request 보내기 전 브랜치 확인하기.

     

     신경을 써야 할 것이 늘었는데, 확실히 생각하면서 코딩하면 다시 보기에도 좋고, 구현하기에도 좋을 것 같다. 1주차 피드백보다 신경 써야 하는 부분이 더 늘어났지만, 차근차근 신경 써서 적용해보도록 해야겠다. 화이팅

     

    반응형

    댓글

Designed by Tistory.