개발/클린코드
[코드 걸음마] 비교 연산자, 하나의 state로 관리할것
키밸류
2022. 1. 2. 17:21

1. 논리 연산자를 잘 사용하여 코드량을 줄이자
/*
BEFORE
두개의 함수를 사용하다보니 코드양이 길어진다
*/
const handleClickOpen = () => {
setOpen(true);
};
const handleClose = () => {
setOpen(false);
};
/*
AFTER
논리 연산자를 사용하여 하나의 함수로 처리하였고 코드양도 줄어들었다
*/
const toggle = () => {
setOpen(!open);
};
!과 같은 논리연산자와 삼항연사자를 통해 if문을 대체하거나 여러개로 쪼개져있는 함수들을 하나로 처리할수 있는 경우가 많다.
2. 하나의 state로 관리할 것
개별적으로 컴포넌트들을 렌더링한다고 컴포넌트마다 state를 지정해주면 코드가 한없이 복잡해 질 것이다.
하나의 역할로 묶을 수 있다면 하나의 state로 관리해보자
/*
BEFORE
각각의 state를 선언하여 관리하면 코드양이 많이지고 관리포인트가 많아져 복잡히다.
*/
const [name, setName] = useState<string>();
const [age, setAge] = useState<number>();
const [height, setHeight] = useState<string>();
/*
AFTER
타입을 선언해주고 하나의 state로 관리해주면 코드도 간결해지고 가독성도 올라가 좋다
*/
interface User{
name: string
age : number
height: string
}
const [profile, setProfile] = useState<User>();