나의 개발일지(김지헌)
항해 99 19일차 10/07 본문
오늘은 주특기 숙련주차에 들어갔다.
이번 개인 과제는 로그인 회원가입 및 좋아요 기능을 구현하는 과제가 있었도 mysql을 사용하여 하는것이였다.
숙련주차 영상을 보면서 공부를 하고 빨리 진도를 나가서 과제를 하고 부족한 개념들을 더 알아볼려고 한다.
객체 리터널
더보기
리터럴(literal)은 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법입니다.
여기서 객체 리터럴은 객체를 생성하기 위한 표기법입니다.
객체 리터럴은 객체를 생성하기 위해 Class를 먼저 선언하고
new 연산자와 함께 생성자를 호출할 필요가 없이
일반적인 숫자, 문자열을 만드는것과 유사하게 객체를 생성할 수 있습니다.
여기서 객체 리터럴은 객체를 생성하기 위한 표기법입니다.
객체 리터럴은 객체를 생성하기 위해 Class를 먼저 선언하고
new 연산자와 함께 생성자를 호출할 필요가 없이
일반적인 숫자, 문자열을 만드는것과 유사하게 객체를 생성할 수 있습니다.
구조 분해 할당
더보기
ES6에서 새롭게 도입한 문법이며 객체(Object) 나 배열(List)을 변수로 분해'할 수 있습니다.
객체를 분해할 때에는 반드시 변수명과 객체의 프로퍼티 이름이 일치해야 합니다.
프로퍼티의 이름이 유효한 식별자인 프로퍼티만 분해 후 할당됩니다.
객체를 분해할 때에는 반드시 변수명과 객체의 프로퍼티 이름이 일치해야 합니다.
프로퍼티의 이름이 유효한 식별자인 프로퍼티만 분해 후 할당됩니다.
에러 핸들링
더보기
에러 핸들링은 에러를 관리하는 방법이고, 예상치 못한 상황에 대처하는 방식입니다.
에러는 예상할 수 있는 에러와 예상치 못한 에러로 구분할 수 있는데,
일반적인 어플리케이션을 설계할 때에는 예상치 못한 에러 상황이 더욱 많이 일어날 것으로 가정해야 합니다.
프로그래머가 작성한 코드에서 예상치 못한 에러가 일어날 가능성은 언제나 존재하고,
이러한 에러 상황을 대비해 언제든지 처리할 수 있어야 합니다.
에러는 예상할 수 있는 에러와 예상치 못한 에러로 구분할 수 있는데,
일반적인 어플리케이션을 설계할 때에는 예상치 못한 에러 상황이 더욱 많이 일어날 것으로 가정해야 합니다.
프로그래머가 작성한 코드에서 예상치 못한 에러가 일어날 가능성은 언제나 존재하고,
이러한 에러 상황을 대비해 언제든지 처리할 수 있어야 합니다.
throw
더보기
위에서 에러를 핸들링하는 과정만 공부하였다면, 에러는 무조건 차단하고 발생시키면 안되는 걸까요?
아닙니다. 프로그래머의 입장에서 에러는 고의로 에러를 발생시키기도 해야합니다.
예를 들어서 은행 어플리케이션의 현금 인출 서비스를 만든다고 할 때,
계좌의 잔고가 요청받은 금액보다 적다면 현금 인출을 막고 예외를 발생시켜야겠죠? 이럴때 사용하는 것이 `throw`입니다.
trow를 호출하면 그즉시 현재 실행되고 있는 함수는 실행을 멈추게됩니다
function withdraw(amount, account) {
if (amount > account.balance)
throw new Error("잔고가 부족합니다.");
account.balance -= amount;
console.log(`현재 잔고가 ${account.balance}남았습니다.`); // 출력되지 않음
}
const account = { balance: 1000 };
withdraw(2000, account);
아닙니다. 프로그래머의 입장에서 에러는 고의로 에러를 발생시키기도 해야합니다.
예를 들어서 은행 어플리케이션의 현금 인출 서비스를 만든다고 할 때,
계좌의 잔고가 요청받은 금액보다 적다면 현금 인출을 막고 예외를 발생시켜야겠죠? 이럴때 사용하는 것이 `throw`입니다.
trow를 호출하면 그즉시 현재 실행되고 있는 함수는 실행을 멈추게됩니다
function withdraw(amount, account) {
if (amount > account.balance)
throw new Error("잔고가 부족합니다.");
account.balance -= amount;
console.log(`현재 잔고가 ${account.balance}남았습니다.`); // 출력되지 않음
}
const account = { balance: 1000 };
withdraw(2000, account);
class
더보기
클래스는 정보를 묶는 것입니다!
현실과 비슷한 개념(객체)을 나타내기 위한 도구를 클래스(Class)라고 부릅니다.
클래스는 미리 정의해놓으면 필요할 때마다 해당 클래스로 동일한 틀을 가진 객체를 만들 수 있습니다.
여기서 동일한 클래스를 이용해 생성한 객체를 인스턴스(Instance)라고 부릅니다.
class User {
}
const user = new User();
user.name = "하이염";
user.age = 28;
user.tech = "Node.js";
현실과 비슷한 개념(객체)을 나타내기 위한 도구를 클래스(Class)라고 부릅니다.
클래스는 미리 정의해놓으면 필요할 때마다 해당 클래스로 동일한 틀을 가진 객체를 만들 수 있습니다.
여기서 동일한 클래스를 이용해 생성한 객체를 인스턴스(Instance)라고 부릅니다.
class User {
}
const user = new User();
user.name = "하이염";
user.age = 28;
user.tech = "Node.js";
'항해 99' 카테고리의 다른 글
항해 99 21일차 10/09 (0) | 2022.10.09 |
---|---|
항해 99 20일차 10/08 (0) | 2022.10.08 |
항해 99 18일 10/06 (0) | 2022.10.06 |
항해 99 17일차 10/05 (0) | 2022.10.06 |
항해 99 16일차 10/04 (0) | 2022.10.05 |