3월 3일 공부일기#

이건우·2021년 3월 3일
0

TiL

목록 보기
3/72

무난하게 개념이해하고 넘겼던 BeeBee 과제와는 다르게 이번 과제는 정말 시작부터 어려운 과제였다. 비록 시간내 제출하진 못했다.. 일단 미완성 제출로 남길려고한다. 하지만 늦었다고 끝은 아니다. 아직 3점슛을 쏠만한 기회가 있다.

계속과제를 붙잡아두고 그러다못한 우울감이 있다. 일단은 쉬던 운동을 하던 그러도록해야겠다. 30분만이라도..

오늘의 공부일기를 시작한다..!

구현부터 애를 먹었다. 하지만 '다향성' 이라는 것을 배웠다. 같은 메서드지만 변수를 다른 액션으로 하게 만드는 것인데

예를 들면 같은 'speak' 이라는 단어도 사람일 경우 '말을 하다' 가 되지만 새일경우 '지저귀다' 라는 말이 된다.

오늘은 이것을 이용하여 코드를 작성하였다.

constructor(top,left,timeBetweenSteps){
    const createDancerElement = () => {
      let elDancer = document.createElement('span');
      elDancer.className = 'dancer';
      return elDancer;
    };
     // <span class= 'dancer'></span>
    this.timeBetweenSteps = timeBetweenSteps
    // span 태그와 classname을 담은 $node 변수. (속성)
    this.$node = createDancerElement()
    this.top = top;
    this.left = left;
    this.step();
    this.setPosition(top,left)
  }

본 참조 코드는 동일하다. 이것이 핵심이다. 사실 나는 이것을 생각하지 못하고,
구현해야할 함수만큼 'span' 태그를 복붙할 생각 하였다..

참조 코드 1

class ChangeDancerClass extends DancerClass {
  // your code here
  constructor(top,left,timeBetweenSteps){
    super(top, left, timeBetweenSteps);
    // span 태그와 classname을 담은 $node 변수. (속성)
    // this.$node = createDancerElement()  // 점을 새로 만들어줌. 
    // this.timeBetweenSteps = timeBetweenSteps
    this.step();
    this.setPosition(top,left)
    this.$node.style.border = 'none'
    this.$node.style.borderRadius = '20px'
    this.$node.style.backgroundColor = `rgb(${Math.floor(Math.random()*255)} , ${Math.floor(Math.random()*255)} , ${Math.floor(Math.random()*255)} )`
    // 문자열로 들어감.
    this.$node.style.padding = '10px';
  
  }
 
 참조 코드 2
 
 class BlinkyDancerClass extends DancerClass {
  // your code here
  constructor(top,left,timeBetweenSteps){
    super(top, left, timeBetweenSteps);
  }
  step() {
    super.step()
  let style = this.$node.style;
    style.display = style.display === 'none' ? 'inline-block' : 'none';
  };
}

공통적으로 잘 보면 DancerClass를 참조한다. 그리고 이곳에서 super()를 통해 '물려받는다'.
이것이 핵심이다.

굳이 새로 코드를 작성할 필요가없다.

오늘 이것외에, 내가 코드를 작성할때 느꼈던점 또 있다..

내가 늘 자주하는 실수.. 대소문자 이거조심해야한다.. 정말 조심해야한다..

그리고 console.log를 페어님이 활용하시고 정확한 진단을 하시는 모습을 보고 많이 배울점이 있다고 느꼈다.

아직 부족하다. 정말 고충이 한가득.. 10시간 12시간 붙잡아놔서도 성과가 없었던 그 악몽이 떠오른다.

일단 이제부터 방향은 바꿔야겠다. 비록 어떻게 될진 몰라도 쉬는시간만큼 꼭 챙겨야겠단 생각이든다.

사실 나는 이방향에 대해 회의적이었으나, 오히려 문제를 계속 붙잡아두는 경향이 나를 학습된 무기력의 길로 인도하는듯한 느낌마저도 든다..

정말 조심해야한다. 그러니 내가 자신감을 채울만한 활동을 반드시 병행해야 한다..

profile
내가 느낌만알고 한줄도 설명할줄 모른다면 '모르는 것'이다.

0개의 댓글