WIL 2주차 회고록

3248 단어 WIL항해99WIL


그동안 내가 알던 (유튜브)알고리즘은 잊자


💻 알고리즘 3.4~3.11

미니 프로젝트가 끝나고 새로운 주가 시작되었다.
이번 주는 알고리즘을 달리는 주차였는데 사실 알고리즘은 살면서 처음 풀어보는 것이었다...
그리고 난이도 하하 문제 1번부터 막혀서 자괴감에 빠졌으나.. 나 같은 초심자들은 전부 그랬다는 말을 듣고 조금 위안이 되었다 ㅎㅎ (왕단순)
첫날은 각자 팀원끼리 한문제를 맡고 어떻게 풀었는지 공유하는 시간을 가졌는데 아직 자바스크립트 문법에 익숙하지 못한 나는 그냥 수학 문제 풀듯이.. 초중딩 수학 총동원해서 풀었다.. 매우 창피
그 다음날부터는 알고리즘은 일단 제쳐두고 자바스크립트 기초 강의만 오질라게 들었다.

그러니까 지금까지 내가 맛보기로 배웠던 자바스크립트는 보통 ~~

<버튼 onclick>해서 스크립트에서 get엘리먼트어쩌구를 해서 
이벤트리스터 뭐시기뭐시기.. 하면 alert 기능을 쓰고 구구절절.. 

이런 것이었는데 이걸로 수학 연산을 하고 뭘 계산하라 하니까 멘붕에 빠진 것이었다.
애초에 파운데이션이 제대로 깔리지 않아서 일어난 일 같아서 정말 많은 강의를 듣고 구글링을 했는데

객체가 뭐고 프로퍼티는 뭐고 파라미터,,, 대체 뭐라는 거지...??????

...거의 알고리즘 주차는 개념 잡는데 시간을 할애한 것 같다.
그 결과... for문과 if문은 눈 감고도 쓰게 된 나....심지어 삼항연산자와 화살표 함수도 구사하는 멋진 모습...ㄷㄷ
이제 알고리즘 문제도 큰 두려움 없이 풀 수 있게 되었다. 가자 레벨 1..!
하지만,,

열심히 풀고 뿌듯한 마음으로 다른 사람들의 풀이 들어가면...
어떻게 저렇게 풀었담....? 한 줄로 풀어버린 온갖 메서드와 정규식의 등장
한순간에 for문과 if밖에 모르는 바보가 되어버린 한 여성...

물론 알고리즘을 시작한 지는 일주일도 안된 초심자가 얼마나 잘하겠냐면은...
그래도 약간의 그런 기대감이 있지 않은가...나름 초등 해법수학 학원 에이스였던 나...문제를 보자마자 ㅋㅋ 별거 아니네 하면서 풀어버리는... 비전공자인 내가 사실은 굿월헌팅의 맷 데이먼?

현실은 그저 두뇌 풀 가동한 채연...

복수는 나의 것

하지만.. 이런 요상한 패배감은 또 나에게 좋은 자극제가 되기도 한다...
나에겐 많은 라이벌이 있는데 그중 유명인들을 소개하자면...
내 토익 라이벌 - BTS로 글로벌 스타가 되기 전 토익 850점 받은 중딩RM(성인 RM은 다음 라이벌)
내 일본어 라이벌 - 내 10년 치 오타쿠 일본어를 좌절하게 만든 6개월 만에 JLPT 1급 딴 성시경씨

그렇다면 나의 코딩 라이벌은...10일 만에 자바스크립트를 만든 브랜든 아이크 씨...
(브랜든 아이크: ???)

아아 진짜 공부 열심히 했는데 바보라서 억울하다... 주말 동안 뇌 마사지 좀 받고 오겠습니다. 말랑말랑

여튼 뭘 배웠냐면

  • 무작정 풀지 말고 어떻게 풀 건지 로직을 한번 정리 후 방법을 생각한다
  • 좋은 코드가 뭘까? 따라 쓰는 코드가 아니라 내가 직접 코드를 써보니 어떤 코드가 시간복잡도 뭐시기가 더 효율적인지 생각하게 되었다.
  • 메서드를 활용하자. 코딩은 수학이 아니야 ~
  • 용어를 공부하니 mdn 문서를 이해할 수 있게 되었다
  • 풀었다...!라는 쾌감... 특히 팀원들과 이건 어떻게 풀었지..? 토론하다가 모두 다 이해했을 때의 그 짜릿함

뭘 더 보강해야 할까?

  • 이번 주에 자바스크립트 기초 딱지 떼고 싶었는데... 아직도 모르는 개념이 많다.
    모르는 거 알게 되면 대충 적어놓지 말고 블로그에 글이라도 쓰기...! 이대로 가다간 그냥 추억 회상 블로그가 돼버리겠음
  • 모르는 것은 어떻게든 그 자리에서 해결하고 마무리 짓자

2주차의 ES6 문법

이번주에 새롭게 배운 화살표 함수(Arrow Function)
function=>으로 대체하여 코드가 간결해지는 es6 신문법이다.
리액트에서도 많이 사용하게 될 것 같아 익숙해 지면 좋을듯하다.
먼저 es5에서의 함수 선언법은 이렇다

var sum = function(x, y) {
	return x + y;
 }

하지만 es6은

let sum = (x, y) => x + y;

훨 간결하고 무엇보다 좀 있어보인다..!

더 자세한 내용은
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Functions/Arrow_functions

좋은 웹페이지 즐겨찾기