[CS] JS callback VS Python Decorator

finelinefe·2020년 12월 8일
0

CS

목록 보기
6/46

JS 콜백함수란?

특정 함수에 매개변수로 전달된 함수. 콜백함수를 받았을 경우에만 처리하는 로직을 짤 수 있다.

일반적으로 자바스크립트는 특정 코드가 종료될 때까지 실행을 중단하기보다는 다음 코드를 실행하기 때문에 비동기 처리의 특성을 가진다. 이런 문제점을 해결 하기 위해 콜백 함수를 사용한다. 콜백 함수란 특정 함수가 실행될 준비가 됐을 때에만 작동한다.

Python 데코레이터란?

'데코레이팅' 또는 꾸미는 것을 뜻하는 데코레이팅이란 단어와 일맥상통한다. @ 기호로 시작한다. 어떤 함수나 메소드를 실행하기 전에 선처리된다. 일반적으로 임의의 함수로 선언되며 그 함수에 기능을 추가한다. 결과적으로 코드를 간결하게 만들어준다는 장점을 가진다

일반적으로 함수 내에 다른 함수를 정의할 수 있다. 또 그 함수를 인자로 전달할 수 있다. 주로 로그인 상태를 확인 후 다음 동작으로 연결하거나 로그, 성능 테스트일 때 사용. 강제성을 가진다.

차이점

매개변수로 함수를 받는 것은 비슷.
콜백함수 : 특정 함수의 동작 1이 끝날 때 동시에 다른 함수(2,3,4..)를 호출할 경우
데코레이터:한 기능을 가진 특정 함수를 여러번 사용할 경우

0개의 댓글