이번 포스팅은 함수형 프로그래밍
이 왜 좋은지 느끼기 위해 명령형 프로그래밍
과 선언형 프로그래밍
의 차이를 알기 위함 입니다.
결과값을 선언
하는 것이라 할 수 있다. 대표적인 예로 CSS가 존재한다.예) result = 햄버거 만들기
어떻게
도달하느냐에 관한 것이다.예) 빵추가 + 토마토, 양상추, 치즈 자르기 + 합치기 + result = 완료
JavaScript를 통해 예시를 들어보자. 다음 예제는 문자열에 존재하는 공백을 특정 문자로 대체하는 함수이다. 명령형 코드에서 이를 해결하는 방법은 다음과 같다.
function spaceToHeart(text) {
let result = "";
for(let i = 0; i < text.length; i++) {
if(text[i]) {
result += "⭐";
} else {
result += text[i];
}
}
return result;
}
보다시피, 명령형 코드는 요구사항을 충족하는데 필요한 모든 단계를 하나씩 적고 있다.
다음으로 선언형 코드에서 이를 해결하는 방법은 다음과 같다.
function spaceToHeart(text) {
return text.replaceAll(" ", "⭐");
}