[nodejs] 비동기 콜백 함수

Node.js에서 비동기 프로그래밍을 수행할 때 가장 많이 사용되는 패턴 중 하나는 콜백 함수(callback function)입니다.

콜백 함수란?

콜백 함수는 다른 함수의 인자로 사용되는 함수를 말합니다. 비동기적인 작업이 완료되었을 때 결과를 처리하거나 다음 단계의 작업을 수행하기 위해 사용됩니다.

Node.js에서의 활용

예를 들어, Node.js에서 파일을 비동기적으로 읽는 경우, 콜백 함수를 통해 파일을 읽은 후에 처리할 작업을 정의할 수 있습니다. 다음은 간단한 Node.js의 파일 읽기 예제 코드입니다.

const fs = require('fs');

fs.readFile('file.txt', 'utf8', (err, data) => {
  if (err) throw err;
  console.log(data);
});

위의 코드에서 readFile 함수는 파일을 읽은 후에 실행할 콜백 함수를 받습니다. 읽기가 완료되면 콜백 함수가 실행되어 파일의 내용을 콘솔에 출력합니다.

콜백 지옥(callback hell)

콜백 함수를 중첩하여 사용하다 보면 코드의 가독성이 떨어지고 유지보수가 어려워지는 콜백 지옥(callback hell)이 발생할 수 있습니다. 이를 해결하기 위해 Promise나 async/await와 같은 기술을 사용할 수 있습니다.

콜백 함수는 Node.js에서 비동기 프로그래밍을 위해 매우 유용한 패턴이지만, 콜백 지옥을 피하기 위해 적절한 사용법을 숙지하는 것이 중요합니다.

위의 내용을 간략히 정리하자면 콜백 함수는 비동기 작업의 완료 후 처리할 작업을 정의하는 데 사용되며, 콜백 지옥 현상을 피하기 위해 Promise나 async/await을 사용할 수 있다는 것입니다.