생성자와 prototype 메서드를 읽기 쉬운 class 문법으로 작성합니다.
class는 prototype 기반 상속 위에 제공되는 문법입니다. constructor는 new로 객체를 만들 때 초기화하고 메서드는 prototype에 공유됩니다. private field는 #으로 선언하며 외부에서 직접 접근할 수 없습니다.
코드를 읽을 때는 class Course { constructor(title){ this.title=title; } } 부분부터 찾으세요. 현재 값과 실행 순서를 줄마다 적어 보면 문법을 외우지 않아도 결과를 예측할 수 있습니다.
함께 바뀌는 값과 동작에 이름을 붙여 여러 곳에서 재사용할 때 적합합니다. 추상화부터 만들기보다 실제 호출부가 반복되거나 교체되어야 하는지 먼저 확인하세요.
실행하기 전에 예상 결과를 짧게 적은 뒤 두 번째 강좌 인스턴스를 만들고 complete를 두 번 호출하세요. 실제 출력이 다르면 콘솔에 처음 나타난 오류와 그 직전 값을 차례로 확인하세요.
class가 데이터를 자동으로 불변하게 만들지는 않습니다. 공개 속성은 외부에서 바뀔 수 있습니다.
직접 바꿔보세요두 번째 강좌 인스턴스를 만들고 complete를 두 번 호출하세요.