2024/3/26 TIL
'오늘의 일에서 나는 어떤 것을 배웠는지' - 학습
Q14. 콜백이란 무엇인가요?
A14.
"콜백(callback)"은 어떤 작업이 완료되었을 때, 일종의 약속된 동작을 실행하는 함수나 메서드를 말한다.
이것은 주로 비동기적인 작업이나 이벤트 처리에서 사용된다.
간단한 예시로, 웹 페이지가 로딩되었을 때 실행되는 함수를 생각해보자.
이 경우에 웹 페이지의 로딩이 완료되었을 때 실행되는 함수가 "콜백"이다.
웹 페이지의 로딩이 완료되면 웹 브라우저가 콜백 함수를 호출하여 해당 페이지의 내용을 표시하거나 특정 동작을 실행한다.
따라서 콜백은 어떤 작업이 완료되었거나 특정 조건이 충족 되었을 때 실행되는 함수이다.
이것은 코드의 유연성과 재사용성을 높이는데 중요한 역할을 한다.
콜백은 다음과 같은 상황에서 주로 사용됩니다.
비동기적인 작업 처리: 비동기 작업이 완료되었을 때 실행되어야 하는 동작을 지정할 수 있다.
예를 들어, 파일 다운로드가 완료되면 다운로드된 파일을 처리하기 위한 콜백을 지정할 수 있다.
이벤트 처리: 이벤트가 발생했을 때 실행되어야 하는 동작을 지정할 수 있다.
예를 들어, 버튼 클릭 이벤트가 발생했을 때 해당 버튼을 클릭했을 때 실행되어야 하는 코드를 콜백으로 지정할 수 있다.
상태 변화 감지: 객체나 시스템의 상태 변화를 감지하여 특정 상황에서 실행되어야 하는 코드를 지정할 수 있다.
예를 들어, 데이터베이스의 데이터가 변경되었을 때 실행되어야 하는 코드를 콜백으로 지정할 수 있다.
'오늘의 나는 무엇을 잘했는지' - 성취
대분류 : 최종 팀 프로젝트 - 클라이언트 구현
소분류 : 데이터 설계 및 메서드 구현
- 캐릭터 스킬 레벨업 메서드에서, 해당 스킬의 레벨업에 필요한 아이템 목록을 확인하고 차감하도록 변경함.
- 스킬 레벨업에 필요한 아이템 딕셔너리 데이터는 따로 저장할 곳이 마땅치 않고 DB도 아직 없는 관계로 따로 스태틱 클래스 및 딕셔너리를 만들어서 그 곳의 데이터를 가져와 체크하는 식으로 구성했다.
추후에 스킬 레벨업에 필요한 아이템 목록 DB를 구축한다면 그 데이터를 불러오도록 수정할 필요가 있다.
- 스킬 레벨업에 필요한 진영별/레벨별 아이템 목록 데이터 딕셔너리를 저장하는 RankUp_skillMaterials 클래스 추가.
Todo : 캐릭터에 경험치 아이템을 사용해서 레벨업 시키는 로직 설계 및 기능 구현
'오늘의 나는 어떤 문제를 겪었는지, 앞으로 어떻게 해결할 것인지' - 개선
-