
🧹 명시적인 코드를 작성할 수 있도록 꾸준히 의식적으로 코드를 작성해야 한다.
최소값과 최대값을 다룬다.
최소값과 최대값 포함 여부를 결정해야한다(이상 - 초과 / 이하 - 미만)
혹은 네이밍에 최소값과 최대값 포함 여부를 나타낸다.
e.g.
const MAX_NUMBER_LIMIT = 37;
const MAX_IN_NUMBER = 37;
function reservationDate(beginDate, endDate) {
// ....
}
reservationDate('YYYY-MM-DD', 'YYYY-MM-DD');
~ 부터 ~~~ 까지 포함된 양의 끝을 의미한다.
min-max와 비슷하나 차이는
⇒ first-last는 양 끝 점이 존재는 하나, 그 안의 요소들에 대한 규칙이나 연속성이 보장X
dom에도 존재한다.
element.firstChild, element.lastChild
prefix
useState, useEffect, useContext
⇒ React Hook의 네이밍 약속이다.
_. 같은 라이브러리 관점에서의 규칙도 있다.
vue에서는 component 같은 경우에 Base, App같은 네이밍 규칙이 있다.
JavaScript의 getter, setter
suffix
const START_REQUEST = 'START_REQUEST' //요청
const START_SUCCESS = 'START_SUCCESS' //성공
const START_FAILURE = 'START_FAILURE' //실패
결론은 prefix와 suffix를 이용해서 코드의 일관성을 가질 수 있다.
🔍 매개변수의 순서만 잘 지켜도 그것 자체가 경계이다.
🔍 호출하는 함수의 네이밍과 인자의 순서의 연관성을 고려한다.
- 유지보수에 취약한 함수를 만들지 않기 위해서는
- 매개변수를 2개가 넘지 않도록 만든다.
- 매개변수가 많을 경우, arguments, rest parameter를 이용한다.
- 매개변수를 객체에 담아서 넘긴다. ⇒ 다양하게 인자를 받을 수 있음.
- 랩핑하는 함수를 만든다. (
사실 이 부분은 이해가 잘되지 않아서 다시 보기!)function getFunc(someArg1, someArg3) { someFunc(someArg1, undefined, someArg3) }
강의 출처 : Udemy - 클린코드 자바스크립트