소프트웨어-이야기/프로그래밍 언어와 프레임워크
ChatGPT에게 IfNecessary, IfNeeded 함수명의 차이를 물어보다.
americano_people
2023. 3. 4. 14:43
함수명의 접미사로 xxxIfNecessary, xxxIfNeeded를 사용하는 경우가 있다.
이는 특수한 조건에 해당하는 경우에만 함수를 실행하게 하는 경우 사용한다.
그러나 두 함수의 차이점이 무엇인지 궁금해져 chatgpt에게 물어보았다.
둘다 필요한 경우에 작업을 수행하도록 할 때 사용된다. 그러나 둘은 미묘한 차이가 있다.
xxxIfNecessary
작업이 항상 실행되지는 않는다. 특정한 조건에 해당하는 경우에만 실행한다.
// 필요한 경우에만 파일에 값을 쓰는 함수
writeToFileIfNecessary()
// 필요한 경우에만 이메일을 발송하는 함수
sendEmailIfNecessary()
xxxIfNeeded
작업이 항상 실행되는 경우에 사용한다. 항상 작업을 해야하지만, 프로그램 연산 비용을 줄이기 위해 값을 캐싱해둘 때 주로 사용한다.
// 값을 계산한 적이 없는 경우에만, 값을 계산하는 함수. 이미 계산한 적이 있으면, 캐싱된 데이터 반환
calculateIfNeeded()
// 데이터를 불러온 적이 없는 경우에만, 데이터를 불러오는 함수. 이미 불러온 적이 있으면, 캐싱된 데이터 반환
loadDataIfNeeded()
chatgpt의 답변 전문은 다음과 같다.