2020.06.17(수) Sprint 3. Inheritance Patterns

Park, Jinyong·2020년 6월 17일
0

Today I Learned

  • OOP의 개념을 학습했다.
    • 캡슐화(Encapsulation): 데이터인 프로퍼티와 메서드를 외부에서 접근할 수 없도록 은닉하고 하나로 묶는 것을 의미한다.
    • 추상화(Abstraction): 다양한 대상의 공통 속성이나 기능을 묶어 하나의 클래스로 정의하여 표현한다.
    • 상속(Inheritance): 상위 클래스를 재사용하며 새로운 클래스를 정의하는 것이 가능하다.
    • 다형성(Polymorphism): 상속을 통해 기능을 확장하거나 변경하는 것이 가능하다.
  • 객체 지향의 장점: 현실 세계를 표현하는데 유용하다.
  • JavaScript에서 객체를 생성하는 방법을 학습했다.
  • 프로토타입 체이닝을 이용한 상속 방법을 학습했다.
  • 프로토타입 객체에 대해서 학습했다.

프리 코스를 진행할 때, 프로토타입은 독학으로 이미 공부했었다. 너무 궁금하기도 했었고, 잘 정리되어 있는 강의 자료를 많이 찾아서 내가 이해한 바를 블로그에 정리해 놓았다. 다른 언어에 없는 개념이기도 하고 JavaScript를 처음 접하는 사람이 프로토타입을 처음 보고서 prototype__proto__ 그리고 constructor의 차이를 구분하기란 쉽지 않을 것 같다. 그리고 pseudoclassical한 방법으로 클래스를 정의할 때, 상속을 하는 방법은 정말 외울 수 밖에 없을 것이다. class 키워드가 있다는 게 정말 다행으로 느껴진다.

오늘 처음으로 self-assessment를 봤다. 제한시간 1시간인데 시간을 못 지키고 30분 늦게 풀었다. 정말 쉬운 문제였는데 아침 9시부터 키보드 잡고 코딩하려니까 멍한 상태로 시간만 보냈다... 분명 되리라 믿었는데 엉뚱한 걸 집어넣고서 왜 안 되나 생각하고 있으니 시간이 순식간에 흘러가 버렸다. 내일부터 toy 문제를 풀텐데 벌써부터 이러니 걱정이 된다... 오늘은 아침부터 기분이 안 좋았지만.. 내일부턴 행복한 하루의 시작을 위해서라도 문제 푸는 연습을 많이 해봐야겠다.

0개의 댓글