220920 이벤트 핸들러 하나쯤 있었으면

샨티(shanti)·2022년 9월 20일
0

TIL

목록 보기
108/145
post-thumbnail

하루를 마무리 하기 전, 오늘 있었던 일들을 잔잔히 되짚어봅니다.
성공과 실패의 모든 요소에서 '배울 점'을 찾아내어 기록하고,
더 성장하는 내일의 나를 위해 'action plan'을 세웁니다.

강의를 이해하는 정도가 아주 약간씩 올라가고는 있지만 중요한 핵심내용이나 전체적인 맥락을 아직 파악하지 못한 것 같아서 좀 당황스러운 며칠째.

퀘스트과제는 어쨌든 주 중후반이 되면 누군가 치고 나가고 나 역시도 끙끙 싸매다가 물어보고 도움을 얻어 제출을 하겠는데, 이번 강의에 나왔던 service의 개념이나(infrastructure 차원) store, 3가지 mocktest 종류, custom hook, flux... 아니 나열을 다 하지 않았는데 이렇게나 길어지면 어떡하나 ;;

좀 답답한 마음이 계속되지만 그래도 더듬 더듬 찾아가면서, 또 이해가 되지 않더라도 외우려 노력하고 있다.
동료의 제안대로 내일은 3강이나 4강에 해당하는 분량서부터 짝프로그래밍을 하는게 낫겠다고 판단되어 오늘 짝을 같이 했던 동료에게 내일도 같이 짝프를 하자고 제안했다.

계속 처음부터 한다면 끝까지 가보지도 못한 채 한주가 끝나버릴 것 같은 위기감에... 다른 동료가 제안한 부분인데 굉장히 스마트하다고 생각했다. ㅎㅎ
앞뒤 꽉 막힌 나는 그저 무식하게 첨부터 세팅하고 난리를 쳤는데... 아직도 나아져야 할 점이 참 많다.


어제는 남편이 뚝섬역 근처로 데리러 와준 덕분에 늦은 밤이었지만 좀 덜 지친 상태로 집에 갈 수 있었다.
사실 아이나 남편이나 얼굴을 볼 기회가 거의 없어서 단둘이 30분정도 시간을 가진 건 꽤 오랜만이었는데.

알고보니 며칠 전에 작은 이벤트가 하나 있었던 것 같다.
말하기가 쉽지 않았는지 얘기를 미루다가 마침 어제 울 엄마가 아이를 봐주게 되어 데릴러 온 김에 이야기를 꺼낸 것 같다.

사소한 일은 아니지만 그래도 덤덤-했다.
언제든 있을 수 있는 일이기도 하고 오히려 큰 일 앞에서는 사람이 좀 냉-해진달까. 그정도 일은 별 거 아닌 것 처럼 느껴졌다. 별 게 아닌게 아닌데..ㅋㅋ

그리고 오늘.
반복과제를 하면서 onChange, onClick을 활용하고 있는데. 문득 내 손에 이벤트 핸들러 하나쯤 누군가 쥐어줬으면~ 하는 생각이 들었다. ㅋㅋㅋㅋㅋ. 별 쓸데없는 생각이 다...ㅋㅋㅋㅋ..

내가 핸들링 할 수 있는 이벤트. 적어내려간 대로, 발생한 이벤트에 대해 어떻게 처리해야 할 지 내가 계획하고 구상해서 지시한 대로. 그렇게 처리가 될 수 있는 무적의 이벤트 핸들러 하나쯤 손에 쥐고있다면.

세상 모든 일이 다 내 생각같지 않고 계획과 함께 가지는 않기에. 결국 얼마만큼 유연한 태도를 갖추었는지. 그 부분도 세상을 살아가는데 꽤 중요한 포인트가 되기도 한다.

계획하고 예상한 대로 흘러가지 않는 상황에 맞닥뜨릴 때, 유연하게 사고하고 대처하지 못해 뎅겅 부러져버리는 우직함(?).. 물론 어느 상황에서는 그 뚝심과 우직함이 큰 장점이 되기도 하지만 갈대처럼 흔들리고 누워야 하는 상황에선 그렇게 흔들려 누워서라도 그 태풍과 바람이 지나가기를, 그리고 그 속에서 살아남기를 힘써야 할 때도 있다.

사고의 유연함, 태도의 유연함. 과제를 할 때에도 정말 필요한 애티튜드인 것 같다.

오늘 나는 유연한 사고와 태도를 갖추기 위해 어떤 노력을 했고 어떤 방법들을 활용했는가?

  • 강의를 모두 이해하지 못했다고 해서 손놓아버리지 않았다. 예전같았으면 그냥 '조급'하기만 했고 그렇다고 무언가를 더 하려고 노력할 생각이나 행동은 X. 이제는 이해하지 못했다고 하여 넋놓아버리지 않고 애써 외우려 한다. 외우다 보면 되겠거니 하는 조금은 망나니 같지만 너른 마음으로. axios를 모킹하여 테스트하는 것 역시 아직 전혀 이해는 안되나 괄호나 콤마의 위치 등을 외워버리는 중이다.
  • 공식문서를 들여다보는데 조금 더 시간을 투자하고 있다. 예전에는 영어로 되어있으면 그냥 휙 넘기고 블로그 글을 찾아보기도 했는데, 이제는 공식문서를 번역기로 돌려보기도 하고, 공신력있는 번역본을 보기도 하며 지금 당장 머릿속에 다 남지 않더라도 나중에 궁금한 부분은 발췌해서 여러 번 읽으면 된다는 마음으로 쭉 읽고있다.

유연한 사고, 태도가 안되는 부분이 있다면 코딩도장이다.
오늘은 '어디서부터 잘못된걸까?' 라는 생각이 들 만큼 코딩도장 문제를 푸는 데 회의감이 들었다.

풀이를 보아도 잘 이해가 되지 않는데 외우는 것 조차 안되지 소위 현타가 왔달까...
해결해야 할 숙제들이 많은 영역인 것 같은데 사실 지금 당장은 뇌가 생각하기를 포기한 것 같아서.... 별로 떠올리고 싶지 않다. 솔직히.

동료들의 이야기를 들어봐도, 인터넷에 후기들을 보아도 코딩테스트가 꽤 중요한 것 같은데. 결국은 짚고 넘어가야겠지? 하다가도 뭐랄까. 문제만 봐도 슬슬.. 열이 오른달까? ㅎㅎㅎㅎ
할튼 오늘은 말고 내일의 생각거리고 남겨둔다...; 에휴

마지막으로 오늘 공식문서를 보며 정리한 내용 간단 공유. 매일 쓰는 TIL에 내 언어와 생각을 담은 이론정리 한줄 쯤은 남기고 싶어서... 한숨 돌리고 또 하자~


프로미스(promise)

  • 자바스크립트 비동기 처리에 사용되는 '객체' (객체이다. 프로미스라고 하면 좀 어렵게 느껴져서 거부감부터 들기도 하고 어떤 개념인지 자세히 생각하지 않으려 해서 나는 '객체'에 방점을 찍었음)
  • 프로미스의 3가지 상태(state)
    - Pending(대기): 비동기 처리 로직이 아직 완료되지 않은 상태
    - Fulfilled(이행): 비동기 처리가 완료되어 프로미스가 결과 값을 반환해준 상태
    - Rejected(실패): 비동기 처리가 실패하거나 오류가 발생한 상태

동기 / 비동기

  • 동기란?
    - 요청을 보낸 후 해당 요청의 응답을 받아야 다음 동작을 실행하는 방식. 순차적인 로직과 흐름이 특징
  • 비동기 처리: line by line 순차적으로 특정 코드의 실행을 끝까지 기다리는 것이 아니라, 다음 코드를 선제적으로 처리하는 것을 의미함. 즉시 응답하지 않기 때문에 예상 밖의 결과가 나올 수 있음
  • 비동기 처리의 대표적인 방법들로는 콜백 함수 사용, promise, promise를 활용한 async/await 사용이 있음

async - await

  • 최근에 나온 비동기 처리 문법으로 기존의 callback이나 promise의 단점을 해소(꼬리에 꼬리를 무는 코드가 발생할 수 있음. 소위 콜백 지옥, then 지옥이라 불림. 헬코드..?)
  • await는 async 함수 안에서만 동작한다는 특징이자 선행조건이 존재함
  • async: function 앞에 위치하며 async를 붙이면 해당 함수는 항상 '프로미스'를 반환함
  • await: 이 키워드를 만나면 프로미스 처리가 될때까지 기다림. 결과는 그 이후에 반환됨. 호출한 함수가 적절한 결과를 반환할 때까지 기다리도록 동작함
  • 함수 선언식과 함수 표현식에서의 async 위치는 아래 참고
// 함수 선언식
async function plus(a, b) {
  	return a + b;
}

// 함수 표현식
const plus = async(a, b) => {
  	return a + b;
};
profile
가벼운 사진, 그렇지 못한 글

0개의 댓글