[WIL] 2주차 - 항해플러스 FE

·2024년 10월 5일
0

0. 2주차.

  • 과제가 어려웠다. 특히 심화 과제.
    이번 과제는 기본적으로 vNode를 구성하고, 이를 바탕으로 DOM Element를 렌더링, 이벤트 관리를 하는 것이다. (간단하게 말하면, jsx 문법을 통해 DOM을 그린다.)

  • 심화과제의 경우는, 여기서 diff 알고리즘을 통해, 바뀐 Node만을 render 하게끔 한다.

1. 문제 (과제, 프로젝트를 진행하면서 부딪혔던 기술적인 문제)

  • 과제에서 구현해야 하는 부분 자체의 레벨도 있었지만,
    각 구현해야 하는 기능의 원리나 이용할 부분이 이해가 잘 되지 않아서 어려웠다.
    따라서, 이해하는 데에 많은 시간을 쏟았다.

  • 위에 언급했지만, 과제 자체의 레벨이 높았다고 생각한다.
    무엇을 구현해야 하는지, 작성된 변수명과 주석이 없었다면, vDom의 렌더 방식 로직을, 감히 작성할 수는 없었을 것이다.
    그리고 주석이 있었음에도, 구현하기 어려웠다. 특히 이벤트 관리가 복잡한 편이었다.

2. 시도

  • 스스로 한참 고민해보고, 다른 사람들에게 질문하며 생각을 공유했다. 대화를 주고 받으며, 결론을 내린 부분이 있고, 서로 제대로 이해하지 못 했던 부분도 있었다.

  • 고민하는 시간이 길었던 탓도 있지만, 그냥 구현하려 했어도 훨씬 더 많은 시간을 썼을 것이다. 과제 제출 마감 직전에는, 다른 사람의 PR을 참고하고, AI에게 도움을 요청하며 코드를 작성하고 수정했다.
    (전 주차에 AI를 적극 활용하잔 생각을 했지만, 2주차는 최대한 스스로 해보자는 생각이 들었다.)

3. 해결

  • 결론이 난 부분이나 다른 사람의 생각, 방향을 얻을 수 있었던 게 좋았다. 혼자 고민하던 것에 비해 시야가 넓어지고, 적은 시간을 들인 것에 비해 얻은 게 많았다. 잘 모르겠는 부분은 한 번 더 찾아보거나, 다른 대안을 찾을 수 있고, 상대도 리마인드 할 수 있어 좋은 듯하다.

  • 일단 해결은 했다. 코드를 읽고 이해하며, 이런저런 케이스의 수동 테스트를 진행하며 확인할 수 있어 좋았다.

4. 알게된 것

  • 기본적으로 같은 문제를 바탕으로 소통할 수 있다. 물어보는 것은, 상대에게도 좋을 수 있다는 것을 리마인드 하게 되었다.

  • AI에게 좀 더 일찍 물어 보는 게 나을 수도 있다. 다만, 물어보기 싫었던 이유는 내가 그 코드에 갇히는 게 싫었기 때문이다. 좀 더 깔끔하지 못한 코드더라도, 직접 구현할 수 있는 경험이 더 좋긴 한 듯하다. 물론 좋은 코드를 보는 것에 익숙해지면 공부가 많이 되기도 하지만, 구현력을 늘리고 리팩토링을 통해 더 좋은 코드와 그렇지 않은 케이스를 비교할 수 있는 게 좋기에, 그랬던 것 같다. 여전히 AI의 사용 타이밍이나, 물어 볼 프롬프트에 관해서는 추가적으로 고민해 볼 필요가 있다.


Keep : 현재 만족하고 계속 유지할 부분

  • 이대로 열심히 하자.

Problem : 개선이 필요하다고 생각하는 문제점

  • 좀 더 소통과 코드 리뷰에 힘을 써야 할 듯하다.

  • 좀 더 시간을 효율적으로 써서, 휴일이 없는 주차에도 잘 진행할 수 있어야 할 듯하다.

Try : 문제점을 해결하기 위해 시도해야 할 것

  • 과제를 일찍 진행을 좀 해야, 소통과 코드 리뷰할 시간도 생길 듯하다.

  • 일요일에 과제를 꼭 시작하자. 점심 시간이나 퇴근 후도 적극 활용하자.
    어느 정도 길어지면, PR이든 AI든 적극 활용을 하자.


profile
내 멋대로 나의 개발 일지

0개의 댓글

관련 채용 정보