코드스테이츠 'Day-22'다. 일요일에서 월요일로 넘어가는 시간이다. 아깝다. 'Day-21'은 지나갔다. 깃헙에 'Twittler'과제를 무사히 제출했다. 디자인, 코드 뭐 하나 마음에 드는 건 없다. 주어진 문제를 해결하는 것에만 집중했다. 과제를 제출하고 몇몇 분들의 코드를 살펴보았다. 어머나 세상에. 내 코드는 너무 길다. 장황하다. 주석도 넣어서 길어진 면도 있다. 그래도 너무 길다. 코드 정리 부족이다.
어떻게 하면 미니멀한 코드를 작성할 수 있을까? '클린코드? 심플한 코드?' 뭐라고 부르는 건 중요하지 않다. 아무튼 정리된 코드를 작성하고 싶다. 동기 분들의 좋은 코드는 좋은 자극제다. 영양제라고 해야 하나? 알고리즘의 중요성을 다시금 느낀다. 의사코드도 중요하다.
처음에 작성했던 'Twittler'코드는 구멍난 보트를 여기 막고 저기 막고 하는 식이었다. 꼬이고 꼬인 코드로 결국 주석처리. 처음부터 다시 생각했다. 기존에 작성했던 함수 중에 쓸만한 것들은 재활용. 이게 뭐지? 하는 함수는 주석처리. 정리한 순서대로 차근차근 하나씩 코드를 작성했다. 버튼 클릭! 예상했던 결과? 오케이. 다음 버튼 클릭! 이것도 통과. 다음 버튼 클릭! 어? 깨끗하게 사라지는 이름, 메시지, 시간. 지난 코드도 여기서 막혔었는데... 좌절은 금물이다.
문제가 무엇인지 코드를 살핀다. 여기가 작동하지 않는다. 수정할 코드 발견! 수정하고 다시 클릭! 실패! 다시 원인 분석. 코드 작성. 버튼 클릭. 실패... 내가 아는 훌륭한 어떤 이는 이렇게 말했다. "빨리 실패하라고." 실패한다. 실패의 원인을 찾는다. 해결한다. 이 과정의 반복으로 결국 작동하게 했다. 'TWITTLER' 코드가 너무 길어서, CSS 디자인을 이쁘게 꾸미지 않아서 미안하다. 그래도 일단 잘 작동함에 감사하자.
코드 미니멀리스트의 길은 멀구나. 의사코드 그리고 알고리즘에 신경을 쓰자. 줄일 수 있는 코드는 줄이자.
'아무말 대잔치' 카테고리의 다른 글
익숙해지는 중... 코드스테이츠 4주 (0) | 2020.08.24 |
---|---|
이걸로 뭐하지? TIL (Today I Learned) (0) | 2020.08.19 |
함수야! 차례를 지켜라. 찬물도 위아래가 있단다. TIL (Today I Learned) (0) | 2020.08.14 |
전공자로 가는 길 TIL(Today I Learned) (0) | 2020.08.12 |
다시 태어나는 마법 TIL (Today I Learned) (0) | 2020.08.10 |