우아한 테크 3주차 미션 정리

백승찬·2020년 12월 18일
0

java

목록 보기
3/3

지하철 노선도 미션

  • 지하철 역과 노선을 관리하는 지하철 노선도 기능을 구현한다.

지하철 역과 노선을 CRUD기능을 이용하여 콘솔로 output을 출력하는 프로그램이었다.

처음에는 MVC패턴과 관련 기능을 숙지하려고 시간을 많이 쏟았다. 그리고 부족한 자바 공부를 위하여 내가 부족한 부분을 자바의 정석과 이해가 잘 안되면 인터넷 강의를 통하여 익혔는 데 시간을 너무 많이 개념부분에서 많이 쏟는 바람에 예외처리와 dumy data부분을 구현하지 못하였다.....

처음에는 프로그램을 구현하는 데 1주차와 2주차 미션에 비하여 난이도가 상당하다고 생각했다. 특히 Controller 비즈니스 로직을 구현해야하는 데 Section 구간에서 이해가 잘 안되어서 많이 고민했다.... 그렇게 시간이 많이 흘러서 결국 다른 분 PR을 보면서 공부하고 로직을 구현 했다ㅠㅠ

3주차 미션을 지나며

컨벤션

3주차까지 미션을 수행하면서 많은 것을 느끼고 배웠다.
특히 컨벤션 부분에서 여태까지 컨벤션이 이렇게 중요하다는 사실을 못 느꼈다.
솔직히 귀찮은 것들로 치부되어버려진 건 아닌 지 미션을 하면서 많이 생각했었다.

하지만 그건 우물안의 개구리라는 사실을 매주 미션을 거듭할 수록 느꼇다.
옛날에 읽은 네이비씰 승리의 기술에서 규율이 곧 자유다라는 사실이 와닿지 않았지만 이번 계기로 배웠다. 규율은 효율성을 높이고 사람을 강인하게 만들고 일상에서 적용할 경우 좋은 습관들을 만들어서 몸에 모든 부분에서 우리를 최적화 시킬수 있다라는 구절이 존재한다. 처음에 읽었을 때는 사람의 창의성과 개성을 방해하는 것 아닌가 라는 생각을 했지만 아니었다.여태까지 내가 겪었던 경험으로는 사람이 무언가 행 할때는 개인보다는 팀이 포퍼먼스가 갑절이 되었다. 내가 boss가 되어서 창의성과 효율을 느끼는 것 보다 팀에서 각자의 규율을 정하여서 행 할 때가 정말 창의성과 효율이 높았다. 여태까지 로직을 짜면서 내가 짠 코드는 내가 사용하는 것이 대부분이었다. 어떤 특정 단체에 속하여서 대규모 프로젝트를 하여 서로가 손발이 되어서 행하는 일이 없었던 나에게는 정말 단비 같은 기회였다. 앞으로도 컨벤션을 잘 지키며 팀원들과 조화롭게 코딩을 하면 정말 좋겠다.

이름을 통해 의도를 드러내라

여태까지 변수,메소드 등의 이름은 굉장히 축약하는 편이었다. 예를 들면 num,a,b,pw 등과 같이 의미가 없거나 추상적이어서 헷갈릴 때가 굉장히 많았다. 하지만 이름을 통해서 의도를 드러내니 확실히 가독성 측면에서 비약적으로 늘었다. 과거에는 내가 짠 로직을 일주일 지나면 남이 짠 코드처럼 느껴질 때가 있었다. 이걸 내가 짰다고? 라고 생각도 많이 했다.... 이번 프리코스를 통하여서 개발자로서의 약점을 많이 보완 할수 있는 계기가 되어서 정말 다행이다.

반복하지마라

의도적으로 반복하지 말아야겠다는 생각으로 로직을 구현하여서 공간 복잡도가 많이 개선되었다:)

값을 하드코딩 하지마라

처음에 짠 코드는 그냥 숫자 덩어리였다...
하드코딩을 뺀 덕분에 로직이 글처럼 읽히는 기분을 느꼈다....Good

구현할 기능 목록 작성

아직도 어렵다... 처음에는 한줄 쓰기도 힘들었다. 하지만 미션을 통하여서 내가 대략적으로 어떠한 구조로 구현할지 방향을 정하여서 코딩을 하게되어서 리팩토링 과정을 많이 줄일 수있게 되었다.

필드의 수를 줄이기 위해 노력한다.

파이썬으로 로직을 구현 할 때는 모든 값이 객체인 전제 조건하에 코드를 구현하여서 내가 객체지향인지 절차 지향인지 헷갈릴 때가 많았다 요번 기회에 객체 지향에 대하여 많은 배움을 얻어서 조금 더 객체지향적으로 코드를 구현 할 수있게되었다.

비즈니스 로직과 UI 로직을 분리해라

이 피드백이 처음에는 무슨 말인지 몰랐다. 일단 비즈니스 로직의 뜻을 몰랐다. 검색하여 찾아보니 MVC패턴까지 흘러들어왔다. 그래서 프로그램을 구현 할때에 좀 더 유지보수가 용이하게 구현 한것 같아서 좋았다. (아직 많이 부족하여 더 많이 공부해야....)

프리코스를 마치며

너무 많은 것을 배워서 즐거우면서 고통의 나날이었다. 서로 모순되는 말이라고 생각했지만 내가 성장하려면 내가 안주하는 것들에서 탈피하여 새로운 세계로 나아가야된다는 것을 느꼈다. 여태 코딩을 하면서 새로운 것의 고통이 괴로워서 현재 나의 위치에서 많이 안주해 있었다. 항상 성장하고 많은 것을 경험해보고 배워보고 싶다는 나의 생각과는 정반대로 움직이고 있었다. 배움의 고통을 매번 피하면서 지내며 늘 배우는 것을 좋아했는 데 어느 순간 새로운 것이 낯설고 두려워 많이 숨었다. 그리고 나태해진 자신을 발견하고 프리코스를 계기로 능동과 도전적으로 바꾸게 해준 계기가 되었다 . 3주동안 길지도 짧지도 않은 기간동안 많은 것을 배우며 느꼈다. 1주차때는 좌절을 많이 느꼈다. 나보다 128명 중에서 내가 꼴등 같았다(Fact) 그래서 너무 많은 겁을 먹었는 지도 모른다. 그런데 일단 떨어지더라도 최선을 다해서 뛰어보자라는 생각으로 미션을 진행했던 것 같다. 2주차..... 3주차도 동일하게 어차피 내가 꼴등인 거 뒤가 없으니 오프라인 테스트까지 최선을 다하자는 마인드로 계속 해왔던 것 같다.

0개의 댓글