코드스테이츠/코드스테이츠 @ 개발 일지

[ 코드 스테이츠 ] 17일차, 이제 점점 어려워진다.

Je-chan 2021. 8. 4. 23:27

  이제 점차 어려운 내용들이 나오기 시작했다. 물론, React나 콜백 함수 등의 고난이도는 아니지만 프롤로그의 막바지 쯤? 혹은 프롤로그 막바지에 접어들어서 시작의 마을이 눈의 보일듯 말듯한 느낌이다. 지금 진행하는 Section 1이 끝나야 프롤로그가 끝나 시작의 마을에 들어설 것 같은 느낌이 든다. 하지만 그렇다고 해서 지금 공부하는 내용이 쉬워서 슥슥 봐도 된다는 것은 아니다. 저번에 반복문 코플릿에서나 이번 주에 했던 객체 코플릿에서 나왔던 문제들을 보면 몇 시간을 들여야 풀 수 있는 문제도 여럿 있었다. 그래도 그 때는 문제 푸는 게 어려웠던 거지 개념을 이해하기 위해서 시간이 많이 들었던 건 아니다. 오늘 배운 내용들은 개념을 대충이 아닌 완벽하게 이해하기 위해서 시간이 많이 들었다. 


[ 오늘의 TODO ]

  1. 코드 스테이츠) 원시 자료형, 참조 자료형 개념 및 check point
  2. 코드 스테이츠) 스코프 개념 및 check point
  3. 코드 스테이츠) 클로저 개념 및 check point
  4. 패스트 캠퍼스) 인강 3개 이상 듣기 // optional
    // 지금은 들어왔던 강의들 모두 복습하는데 시간을 들이는 중
  5. 생활) 물 1L 이상 마시기
  6. 생활) 수-토-일 운동 

[ 오늘의 오류 해결 ]

1.  접근 가능하다.

  오늘 스코프에 대한 개념을 공부하다가 몇몇 용어들이 정리가 잘 안 돼서 빠르게 이해하지 못했다. 하이라이트는 클로저였지만 클로저를 완벽하게 이해하기 위해서는 스코프에 대한 개념을 확실하게 잡아야 했다. 개념에 대한 것들은 주말에 복습하는 시간을 이용해서 기술 블로그를 작성할 것이기 때문에 자세한 개념 내용은 뒤에 다루기로 한다. 

 

  내가 막혔던 명제는 "안쪽 스코프에서 바깥쪽 스코프로는 접근이 가능하지만 바깥쪽 스코프에서 안쪽 스코프로는 접근이 불가능하다"라는 내용이었다. 이해하면 내가 이해를 못한 게 어이가 없긴 하지만 그래도 몇 분 동안 고민을 한 내용이니까 적도록 하겠다.

 

let friend = "Je";

function hello ( ) { 
  let firstName = "chan"
  return `${friend} ${firstName}!`
};

console.log(friend); // Je
console.log(hello()); // Je chan!
console.log(fristName); // undefined

 

  두 번째 console.log를 보면 변수 firstName 은 hello라는 함수 안에서 정상 작동하지만 그것을 함수 밖에서 사용하면 세 번째 console.log처럼 undefined가 나온다. 반대로 함수 실행할 때 friend 라는 함수 밖에서 선언한 변수가 함수 내부에서는 정상 작동하는 것을 확인할 수 있다. 

 

  종합하면 함수 밖에서 선언된 것은 함수 안에서도 사용이 가능하지만 함수 안에서 선언된 것은 함수 밖으로 나갈 수 없다는 것을 의미한다. 이걸 접근이 가능하다라는 용어로 표현한다면 안쪽 스코프(함수 내부)에서 바깥쪽 스코프(함수 외부)로는 접근이 가능하지만(접근해서 변수를 자기에게로 가져올 수 있지만) 바깥쪽 스코프에서 안쪽 스코프로는 접근이 불가능하다(함수 외부에서 함수 내부로 접근해서 변수를 자기에게로 가져올 수 없다)로 얘기할 수 있을 것이다. 이 개념을 확실히 하고 넘어가야 이후에 클로저를 이해하는데 도움이 된다. 

 

  자세한 개념 내용은 주말에 기술 블로깅으로 작성하겠다. 


[ 오늘의 교훈 ]

1. 어려운 개념을 공부한다면 일단 콘솔창에 찍어보자

  내가 클로저를 이해하기 위해 사용한 전략은 콘솔창에 미친듯이 적어보는 것이었다. 코드 스테이츠의 질문들을 변형하면서 이것저것 콘솔창에 입력을 해보니 어느정도 감이 잡혔다. 그러고 나서 내가 추가적으로 궁금한 것들을 더 입력해보니 개념이 이해가 됐다. 

 

  음.. 오늘의 교훈은 여기서 끝이긴 하다. 사실, 오늘은 교훈을 얻었다기 보다는 개념을 많이 공부한 시간이었다. 아, 추가적인 교훈이라면 도쿄 올림픽 여자 배구 4강 진출이다.

 

2. 포기하지 않는 집념

  솔직히, 터키까지 이길 줄은 몰랐다. 8강만 올라가도 잘 한 것이라지만 거기에서 더 나아가 4강까지 올라가다니. 정말 대단하다. 그 모습이 집념이고 끈기라고 생각했다. 경이롭다 못해 경외롭다. 선수 개개인의 신체적 조건과 실력을 종합해서 본다고 한다면 터키가 유리했다. 그런데 진짜 실력 그 너머의 무언가가 있는 것 같다. 실력으로 뒤지지만 절대로 실력에 의해서 뒤쳐지지 않는 그 무언가가 있는 것 같다. 정신력? 집념? 조직력? 뭐라고 표현하기는 어렵지만 그 무언가가 분명히 있었다. 여자 배구 8강 게임을 보면서 정말 많은 것이 느껴졌다. 소름이 돋았고, 사람의 가능성이라는 것이 보였던 것 같다. 

 

  노력해야겠다. 저 한 번의 스윙을 위해, 한 번의 블로킹을 위해, 한 번의 리시브를 위해 수 천 번, 수 만 번은 몸을 날리고 다쳤을 선수들의 노력처럼 노력해야겠다. 뒤쳐지는 실력이지만, 실력 그 너머의 것으로 실력을 뛰어넘고 싶다. 그리고 언젠가는 모두를 품을 수 있으며 모두에게 가능성을 열어주는, 자기 일에 프라이드를 가지며 사람들 앞에서 당당하게 서는, 그리고 그럴 실력을 갖고 있는 사람이 되고 싶다.

모든 것을 걸고 최선을 다한 사람의 모습은 언제나 아름답다