2022.11.10.(목)
TIL Today I Learned
Good: 어제 공부한 부분을 실시간 강의로 해설해 주셨다. 다시 보니 조금 알 것 같아 공부하길 잘했다. 공부 계획을 조금 바꿨다. 알고리즘을 줄이고 리액트 기초 공부를 늘렸다.
Bad: 좋은 회사에 취업하려면 알고리즘은 필수라고 했다. 알고리즘을 잘하고 싶다. 하지만 리액트 기초를 먼저 하고 싶은 욕심이 생긴다.
▶ 유퀴즈 제167회! 스탠퍼드 부학장님이 나왔다.
To. 세상 모든 꼴찌에게
좋은 거, 잘하는 거, 즐길 수 있는 걸 하다 보면 최고가 된다. 해보니까 되더라. '포기'만 하지 않으면 된다. 모든 사람들은 자기만의 특기를 갖고 태어났다. 그걸 찾아야 한다고 생각한다. 포기만 하지 않으면 분명히 찾을 겁니다. 티칭과 코칭의 차이점은 조금만 코칭을 해줘도 많이 바뀐다.
▶ 스케이트보드를 좋아한다. 유튜브를 통해서 독학으로 배웠다. 처음 시작은 간호사 3교대 하니까 시간 가는 줄 몰랐다. 무슨 요일인지 며칠인지 관심 없고 나의 듀티(시간표)만 생각했다. 오늘은 데이구나! 내일은 이브구나! 이런 식으로 말이다. 선임 간호사 선생님께서 "취미가 필요하다. 아무도 나에게 알려주지 않아서 나의 젊음이 그냥 지나갔다."고 알려줬다.
고등학생 때부터 친구가 옆에서 보드 얘기를 했다. 그땐 관심이 없었는데 취미 얘기하니까 보드 생각이 났다. 이제 돈도 벌고 주변에 보드공원으로 유명한 곳이 있어 도전하게 되었다. 처음부터 잘하는 사람은 없다. 스탠퍼드 부학장님 말씀처럼 좋아하는 거로 시작해서 잘하게 되었고 잘하니까 즐기게 되었다. 인도에서는 내려서 가고 부드러운 바닥에서는 탔다. 다음 인도에서도 평평하면 탔다. 점점 도전하게 되었다. 조금 덜 평평한 보도블록, 턱이 있는 곳 순으로 다녔다. 한 번도 넘어진 적, 사고 난 적이 없다. 위험하게 타지 않기 위해 주위를 살피고 보호장비를 착용했다. 아직 스케이트보드 타는 게 엄청 행복하다.
▶ 유치원 때부터 컴퓨터와 접촉이 있었다. 발레학원 건물 1층이 컴퓨터학원이었다. 언니 오빠들이 들어가는 거 보니 나는 아직 배울 수 없는 단계인가 보다 생각했다. 1차 거리감을 느꼈다. 초등학생 저학년 때 방과 후 수업으로 컴퓨터 배우기가 있었다. 한 달 듣고 수업을 따라가지 못해서 흥미를 잃었다. 2차 거리감을 느꼈다. 고학년 되니까 수업에 컴퓨터 시간이 따로 있었다. 또 못 따라가서 제일 싫었다. 3차 거리감을 느꼈다.
대학생 되니까 ppt를 만들어야 했다. 중고딩 때 배웠던 실력으로 했는데 당연히 못 했다. 동기들은 어쩜 저렇게 잘했는지 대단하다고 느꼈다. 내가 못 해서 창피한 것보다 나도 할 수 있다는 생각으로 찾아보고 만들었다. 옆에서 지켜본 언니가 내가 졸업할 때 ppt를 잘 만들어서 깜짝 놀랐다고 했다. 이제 컴퓨터와의 거리감은 없어졌다. 하면 할 수 있는지를 배웠다.
대학생 때 룸메이트가 영상디자인학과여서 맥북으로 영상 편집하는 것을 보았다. 어려워 보여서 관심이 없었다. 하지만 계속 접촉을 하게 되니까 시도를 하게 되었고 이제는 영상 편집도 독학으로 잘 하게 되었다.
이처럼 하고 싶은 게 생기면 꼭 시도를 하고 내 것으로 만드는 경향이 있다. 리액트도 옆에서 계속하니까 관심이 생겼고 지금 시작하게 되었다. 이전 성공 경험이 있기 때문에 잘 할 것이다. 포기만 하지 않으면!
▶ 이 책의 목표는 여러분이 놀라운 기술에 감사하는 마음을 갖고 기술이 어떻게 작동하는지, 어디서 왔는지, 미래에 어디로 갈 것인지를 이해하게 되는 것이다. 그 과정에서 어쩌면 세상을 바라보는 유용한 방법을 찾을 수 있을 것이다. 부디 그렇게 되기를 희망한다.
[브라이언 W. 커니핸(2022). 1일 1로그 100일 완성 IT 지식. 서울: 도서출판인사이트]
[리액트 기초반]
* 1-7강 자바스크립트 기초(2)
▶ super method에 대해 궁금함!! 상속?
▶ 클래스를 상속한다는 건, 이미 만들어 둔 어떤 클래스를 가지고 자식 클래스를 만든다는 것이다.
class Cat {
// 생성자 함수
constructor(name) {
// 여기서 this는 이 클래스입니다.
this.name = name;
}
// 함수
showName(){
console.log(this.name);
return this.name;
}
}
// extends는 Cat 클래스를 상속 받아 온단 뜻입니다.
class MyCat extends Cat {
// 생성자 함수
constructor(name, age) {
// super를 메서드로 사용하기
super(name);
this.age = age;
}
// 부모 클래스가 가진 것과 같은 이름의 함수를 만들 수 있습니다.
// 오버라이딩한다고 해요.
showName(){
console.log(this.name);
// super를 키워드로 사용하기
return '내 고양이 이름은 '+super.showName()+'입니다.';
}
showAge(){
console.log('내 고양이는 '+this.age+'살 입니다!');
}
}
let my_cat = new MyCat('perl', 4);
my_cat.showName();
my_cat.showAge();
▶super 키워드
메소드로 사용할 수 있다.(constructor 안에서)
부모의 constructor를 호출하면서 인수를 전달한다.
this를 쓸 수 있게 해준다.
키워드로 사용할 수 있다.
▶ 강의 너무 재밌다. 계속 보고 싶다. 기초부터 시작해서 나의 수준에 맞다. 문법에 대해 너무 궁금했는데 배워서 좋다. 나도 강사님처럼 어떤 문법인지 설명을 잘하고 싶다. 알고리즘을 해야 하니까 중간에 수업을 멈춰야 하면 아쉽다. 그래서 자기 전에 모던 자바스크립트 Deep Dive 책을 읽어보려고 한다.
[ 2주차 계획 ]
-스파르타코딩클럽 계획
✔ 월: javascript 올인원
✔ 화: 파이썬 문법 기초
✔ 수: 파이썬 문법 기초/ 자료구조 알고리즘
✔ 목: 자료구조 알고리즘
□ 금: 자료구조 알고리즘
-나의 계획
✔ 9AM - 6PM 초보 리액트 공부하기
✔ 7PM - 자기 전까지 알고리즘 자료구조 듣기