
오늘은 spread, rest, 구조 분해 할당을 배운 뒤 어제 오늘 배웠던 것들을 koans 라는 것으로 문제를 페어와 함께 풀면서 정리하는 시간을 가졌다. 그런데 단순하게 문제를 푸는 것이 아니다. 풀어야 하는 문제들의 답을 미리 볼 수 있도록 했다. 답을 볼 수 있다? 이건 답을 생각해내는 그 과정이 매우 어렵다는 것을 의미한다. 나랑 페어 분은 최대한 답을 보지 않고 풀기 위해 노력했는데, 그럼에도 답을 보지 않고서는 풀기가 매우 어려운 것들이 있어서 답을 몇 번 참조했다. 심지어는 지금까지 배우지 않은 개념들을 사용해서 구글링을 엄청 하고 또 계속 찾아봐야만 했다. 어쨌든 결국에는 모든 답을 찾아내고, 스프린트 리뷰를 통해서 그 답들을 도출해내는 과정까지 익혔다.
이제 복습을 해야 내 것이 된다.
[ 오늘의 TODO ]
코드 스테이츠) spread 개념 익히기코드 스테이츠) rest 개념 익히기코드 스테이츠) 구조 분해 할당 개념 익히기코드 스테이츠) Pair-Programming (Koans)- 패스트 캠퍼스) 인강 3개 이상 듣기 // optional
생활) 물 1L 이상 마시기개선) 페어 프로그래밍할 때도 혼자 있을 때처럼 침착하게 오류 대처하기// 오늘도 오류를 침착하게 대처했고 페어에게 내가 이렇게 코딩 짜는 이유를 설명하는 것도 침착하게 잘 해낸 것 같다.

[ 오늘의 해결 ]
1. String와 타입이 다른 것 끼리의 덧셈, 뺄셈
덧셈은 잘 알고 있었다. 만약에 "1" + 1 을 한다면 뒤의 숫자 1이 문자열로 바뀌어서 "11" 이 나온다는 것은 알고 있었다. 하지만 빼기는 당혹 그 자체였다. 만약 23 - "1" 을 한다면 어떻게 될까? 물론 당장 cosnole.log(23-"1") 을 찍어만 봐도 알 수는 있지만 정확한 개념을 알기 위해 구글링을 했다. 구글링 결과 뺄셈은 number 타입 끼리의 뺄셈으로 간주하게 되므로 23 - "1" 은 덧셈과는 반대로 문자열이 number로 바뀐다. 그렇게 해서 결국 값은 22가 된다.
2. new date.getFullYear( )
문제 잘 풀고 있다가 저게 나와서 뭔지 몰라 MDN으로 바로 검색했다. 알고 보니 오늘 현 시간을 기준으로 지금이 몇 년도인지를 나타낸다.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getFullYear
Date.prototype.getFullYear() - JavaScript | MDN
The getFullYear() method returns the year of the specified date according to local time.
developer.mozilla.org
3. .repeat( )
문자열에서 .repeat( ) 라는 메소드는 인자로 받은 수만큼 문자열을 반복해서 나타낸다
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/repeat
String.prototype.repeat() - JavaScript | MDN
The repeat() method constructs and returns a new string which contains the specified number of copies of the string on which it was called, concatenated together.
developer.mozilla.org
4. .assign( target, ...source)
이건 객체를 대상으로 한다. target이라는 객체에 source 객체에 들어있는 요소들을 말 그대로 배치(assign)한다. 이 때 주의할 점은 만약에 target 객체와 source 객체 사이에 공통된 key가 존재한다면 그 key의 value는 source를 따라간다.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign
Object.assign() - JavaScript | MDN
The Object.assign() method copies all enumerable own properties from one or more source objects to a target object. It returns the modified target object.
developer.mozilla.org
[ 오늘의 교훈 ]
1. 복습을 통한 반복만이 살 길이다.
내가 공부하면서 스스로 느낀 것이기도 하지만 함께하는 내 페어분과 함께 생각한 거기도 하다. 페어분은 이번 코드 스테이츠가 진짜 처음 코딩을 공부하는 것이라고 한다. 그래서 공부를 혼자서 복습을 계속 해오셨는데 문제는, 양이 너무 많아서 복습하지 않은 내용들이 몇 개 있으셨다. 오늘 문제를 풀면서 페어 분이 막히시거나 뭐였지? 했던 부분들은 대부분 그 복습하지 않으셨던 내용들이었다.
나는 많이 외우는 것에 취약하다. 하지만, 응요하는 것은 자신있다. 100개를 외워서 그 중 한 개 맞히는 시험을 볼래 아니면 한 개를 외워서 그걸 100번 응용하는 시험을 볼래 라고 한다면 나는 주저 없이 후자를 선택한다. 그 정도로 외우는 것에는 자신이 없지만 응용에는 자신이 있다. 여기서 집고 가야할 점은 응용하기 위해서는 먼저 그 하나라도 외워야 한다는 것이다. 그런데 저번에도 크루님께서 말씀하셨듯이 개발자는 외워서 개발하는 게 아니라 부딪히면서 개발하는 것이다. 그렇다고 무턱대고 맨날 부딪힌 곳에 부딪히고 안 부딪히려고 노력하지 않으면 발전도 없고 시간 효율도 매우 나빠진다. 그렇기에 한 번 부딪힌 일에는 한 번 이상은 복습하는 자세를 길러서 다시 부딪히지 않도록, 물론 쓰지 않다보면 계속 까먹겠지만 그 때 또 부딪히면서 더 빠르게 개념을 습득할 수 있도록 노력해야겠다.

'코드스테이츠 > 코드스테이츠 @ 개발 일지' 카테고리의 다른 글
[코드 스테이츠] 22일차, 시간이 지날수록 시간이 늘어난다 (0) | 2021.08.09 |
---|---|
[코드 스테이츠] 19일차, DOMMMMM (0) | 2021.08.06 |
[ 코드 스테이츠 ] 17일차, 이제 점점 어려워진다. (0) | 2021.08.04 |
[ 코드 스테이츠] 16일차, 20주 뒤에 보자 (0) | 2021.08.03 |
[코드 스테이츠] 15일차, 객체가 된 기분 (0) | 2021.08.02 |