반응형
명령형(imperative) 코드 vs 선언형(declarative) 코드
선언형 코드(declarative)
원하는 결과를 표현하기 위해 코드가 작성됨
ex : CSS
빨강색 배경을 보고싶으면
body {
background-color:red;
}
원하는 결과를 얻기위한 단계가 없음
- `선언형 코드`는 원하는 `결과값`을 선언하는 것
명령형 프로그래밍(imperative)
원하는 결과를 얻기 위해 필요한 지침에 따라 코드가 작성됨
- `명령형 코드`는 그 `결과값`에 어떻게 도달하느냐에 관한 것
예시코드
- 띄여쓰기를 특수문자로 변경하는 코드
명령형
function spaceToDash(text) {
let result = '';
for (let i = 0; i < text.length; i++) {
if (text[i] === ' ') {
result += '-';
} else {
result += text[i];
}
}
return result;
}
console.log(spaceToDash('hello world')); // hello-world
선언형
function spaceToDash(text) {
return text.replaceAll(' ', '-');
}
console.log(spaceToDash('hello world')); // hello-world
모든 선언형 코드는 명령코드 위에 씌여진다고 말할 수 있음
명령형 > 선언형
명령형 코드의 단점
- 개발자의 능력에 따라 버그가 발생하기 쉬움
- 팀 동료들은 코드를 이해하기 어려워 할수도 있음
- 함수가 정확히 무엇을 하려고 하는 지, 한줄 한줄 전부 보아야함
선언형 코드의 단점
- 사용하는 함수들을 미리 알고 있어야함 (팀원들도)
'기타' 카테고리의 다른 글
DB [Info : 트랜잭션과 락] (2) | 2024.01.08 |
---|