지난 2주간 학습해보니 ‘내가 알던 지식과 달랐던 개념' 이야기하기😀
유승범
- 컴포넌트 단위 설계는 리액트, 뷰, 앵귤러 같은 프레임워크로 하는 것이라고 생각하고 있었는데 vanilla js로도 가능하다는 것을 알게 되었습니다.
- 프론트엔드 개발자는 웹 사용자에게 제공되는 기능적인 측면에서 중요한 줄 알고 있었는데, 렌더링 같은 사용 편의에 관하여 잘 알아야 한다는 것을 알게 되었습니다.
- 생각보다 함수형 프로그래밍으로 코딩하는 것이 어렵다는 것을 새롭게 알게 되었습니다 🥲
- 반면에 역시 코딩 테스트 볼 때 파이썬이 짱이라는 것을 또 한번 알게 되었습니다 😂
신승연
- 배열의 shift 연산의 복잡도는 O(n)이라는 것을 알게 되었습니다.
- 바닐라 자바스크립트로 리액트처럼 컴포넌트 형태로 짤 수 있다는 것을 코드를 짜보며 배웠습니다.
- 비동기 처리에 대한 지식이 부족했는데 promise와 async await에 대해 정리할 수 있었습니다.
- fetch api 는 http error가 발생하더라도 reject되지 않는다는 점을 알게 되었습니다.
유용상
- 기존에 Java를 통해서 코딩을 했었고 프로젝트를 진행하면서 별 생각없이 this를 사용하다 보니 Java와 JavaScript에서의 this가 가리키는 객체의 차이점을 알았습니다.
- 알고리즘 문제를 풀때 문맥 파악해서 알고리즘을 때려 맞추는 식으로 해결했었는데 이선협님의 코딩 테스트 준비 방법 세션을 듣고 유형을 파악하는 방법을 배웠습니다.
- 서버와 요청해서 데이터를 업데이트할 때 비관적 업데이트로 진행을 했었는데, 이번주 강의를 듣고 낙관적 업데이트에 대해서 알게 되었습니다. 낙관적 업데이트를 이용하면 사용자에게 좀 더 나은 서비스를 제공해줄 수 있습니다.
진연주
- 바닐라 JS로 SPA를 구현하는 경험은 있지만, 세부적으로 어떻게 동작하는지에 대한 이해가 없었는데 내부적인 동작에 대해서 자세히 알 수 있게 되었습니다.
- 특정 기술에 대해서 공부할 때 그저 그 기술만 공부하는 것이 아니라, 그 기술이 나오게 된 이유와 어떤 방식으로 개선한 기술인지에 대해서 더 생각하는 습관이 생기게 되었습니다.
정지영
- 굉장히 본질적인 부분이었지만, 프론트엔드 개발자는 단순히 ‘구현’만을 목적으로 하는 개발자가 아니라는 생각을 가지게 되었습니다. 2주간 학습하는 동안 실습을 진행하는 동안 사용자의 입장에서 끊임없이 생각해야 했습니다. 정말 사소한 input 내용 유지, 낙관적 업데이트 등의 부분을 실습하며, 프론트엔드 개발자가 갖춰야 하는 역량에 대해 다시 한번 더 생각하게 되었던 것 같습니다.
- 독립적인 컴포넌트 구성은 단순히 개발자의 코딩 편의성을 위한 것이라 생각했습니다. 하지만, 네트워크 로딩 속도나 여러 기능이 맞물려 동작할 때, 독립적인 컴포넌트가 훨씬 사용성을 좋게 만드는 것을 알 수 있었습니다.
- 코딩 테스트를 볼 때, 시간 복잡도를 계산하는 것이 크게 중요하지 않다고 생각했습니다. 따라서 구현 위주로 연습했었는데, 이번에 시간 복잡도를 계산하고 코드의 효율성을 높이는 부분이 상당히 중요하다는 것을 알게 되었습니다.
- 알던 지식과 달랐던 개념보다는, 새로 알게 된 내용도 많았습니다.
Promise
,async
,await
비동기 처리 방법을 배우고 실습을 통해 익힐 수 있었습니다.- 웹을 구성할 때, 함수형 프로그래밍을 적극적으로 이용하는 방법에 대해서 알 수 있었습니다.