한 주 돌아보기
이번주에 해낸 것 | 이번주에 하지 못한 것 |
😎 웹개발 종합반 완강하기 | 🤔 공부한 내용 정리해서 블로그에 작성하기 |
😎 강의 코드 jQuery → 바닐라JS로 바꿔보기 | |
😎 알고리즘 2문제씩 풀기 |
✅ 웹개발 종합반 완강하기, 강의 코드 jQuery → 바닐라JS로 바꿔보기
부트캠프 사전 예습 강의인 웹개발종합반 강의가 입학시험에도 반영되는터라 1회독을 수강했다. 웹개발종합반 강의는 HTML, CSS, 간단한 JS로 화면을 만들고 파이썬과 몽고DB로 서버단이 진행된다. 본 과정(프론트엔드)에서는 파이썬과 몽고DB를 사용하지 않기 때문에 처음엔 이걸 어느 정도 깊이까지 공부해야 하는지 고민이 많았다. 강의를 수강해 보니 프로그래밍 언어를 자세히 알려주기보단 웹 페이지를 어떻게 만드는지에 대한 흐름을 이해하는 강의였기 때문에 흐름 이해와 간단한 추가 구현만 목표로 하여 부담 없이 수강했다. 또한 강의에서 사용했던 jQuery 부분은 모두 바닐라 JS로 바꿔주는 작업을 하며 공부를 진행했다!
[참고] 웹개발 종합반 1~5주차 정리
✅ 알고리즘 2문제씩 풀기
이전에는 코테 문제 풀이는 엄청 잘하는 사람만 하는 게 아닌가? 하는 생각이 있었는데 Lv.0, 1의 존재를 알게 된 1월 말부터 하루에 한 두 개씩 꾸준히 문제를 풀고 있다. 내가 풀 수 있을까 싶었지만 그래도 일단 해보자, 싶은 마음으로 하나씩 풀다 보니 나름 다음과 같은 혼자만의 규칙이 생겼다.
- 문제를 끊어 읽어보며 단계 별로 내가 해야 할 일을 적는다.
- 이 문제가 예를 들어 '배열의 순서변경으로 풀릴 것 같은데?'라는 생각이 들면, 답이 아닌 해당하는 함수만 찾아보고 문제에 적용하며 풀어본다.
- 한 시간 이상 풀리지 않으면 다른 문제를 먼저 풀어보고, 그 이후에도 풀리지 않으면 차라리 답안을 보고 분석한다.
- 여러 방법으로 풀 수 있어 보인다면 답안 제출 후 다른 방법으로도 풀어본다.
- 다른 사람은 같은 문제를 어떻게 풀었는지 꼭 체크한다.
처음엔 if, for만 사용했는데 풀다보니 사람들이 자주 쓰는 함수들이 보였다. filter, map, splice, sort, Math함수 등.. 낯설었지만 하나씩 적용하다 보니 거의 for문 사용하던 초반에 비해 이 상황에서는 filter를, 이때는 map을 사용해서 풀면 되겠다! 까지 올라온 상태다.
문제를 풀고 답안을 분석하며 이 사람들은 왜 이렇게 잘하지? 어떻게 이렇게 한~두줄로 풀어내지? 하는 생각이 가득할 때쯤, 답안 페이지에서 Daniel Choi님이 작성한 아래와 같은 댓글을 보았다.
Nothing wrong with using a for statement in this challenge. When it comes to readability this solution is not that good compared to for-using one. Doesn't mean using reduce() is bad ofc, but you guys need to think about what is a 'good' code not just 'cool'.
'멋진'게 아니라 '좋은' 코드가 무엇인지 생각해라.. 나도 한 줄, 두 줄로 줄이는 연습을 해야 하는 걸까 싶던 차에 내가 가야 할 길을 명확하게 다시 짚어주는 댓글이었다. 초반인 지금은 멋진 답안을 이해도 못한 채 따라가기보다 왜 이 함수를 적용했는지, 어떻게 풀려고 했는지 내 코드를 내가 이해하고 가는 게 더 중요하기 때문이다. 굳이 코테 문제가 아니더라도 개발할 때도 마찬가지일 것이다.
이전에는 풀고 깃허브에 커밋만 했는데, 다시 보고 싶은 풀이 등을 찾아보기 어려워 이번주에는 푼 문제들을 노션에 따로 정리하고 있다. 다시 보면 좋은 풀이 등은 체크해서 생각날 때마다, 문제를 풀다 막힐 때마다 참고하며 보는 중! 100문제 정도 풀다 보니 약간 막히는 느낌이 들긴 하는데 그래도 하루에 한 문제라도 꼭 풀면서 천천히 실력을 늘려볼 생각이다. Lv.2, 3을 푸는 그날까지!
❌ 공부한 내용 정리해서 블로그에 작성하기
프론트엔드 공부를 시작한 2월부터 대강 정리한 내용들은 쭉 있는데, 블로그에 올리는 건 또 다른 영역이라 아직 진행하지 못했다. 지금까지 공부했던 HTML, CSS, git, 간단한 JS 내용들이 있는데 나를 위해서라도 다시 한번 복습하는 생각으로 블로그에 올려볼 예정! 다음 주에는 하나라도 올려보는 게 목표다.
부트캠프를 시작하며
다른 분들은 이미 온보딩을 시작하고 있지만, 나는 20일부터 합류하기 때문에 나 혼자만의 온보딩주차를 가지며 내가 왜 개발 공부를 하기로 마음먹었는지, 왜 프론트엔드 공부를 시작했는지 되돌아보는 시간을 가졌다. 그리고 결론은 사용자가 어떻게 하면 더 편하게 사이트를 이용하고, 사용자가 데이터를 더 잘 전달받을 수 있는지를 고민하는 프론트엔드 분야가 역시 내 적성에 잘 맞는다는 것. 월요일부터 시작할 항해도, 성장해 있을 내 모습도 기대된다. 즐거운 99일을 보내보자!
이번 주의 문장
If tou could chane the way you wake up in the morning,
Stop saying, "I got to go to work. I got to workout. I gotta get this weight off of me. I gotta go and meet with the people at the school. I gotta deal my coworkers."
Change one word in that sectence and everything about your life changes. "I get to wake up in the morning, I get to go to work. I get to go and meet with these people today.
When you say I got to, you take all of your opportunities and all of your blessings, and you wrap them up in stress by saying, "I got to". It is an amazing game changer.
'Diary > WhatILearned' 카테고리의 다른 글
[항해99 / 3주차] 🚢 23-04-17 ~ 23-04-23 WIL (0) | 2023.04.23 |
---|---|
[항해99 / 2주차] 🚢 23-04-10 ~ 23-04-16 WIL (0) | 2023.04.16 |
[항해99 / 1주차] 🚢 23-04-03 ~ 23-04-09 WIL (0) | 2023.04.09 |
[항해99 / 온보딩주차] 🚢 23-03-27 ~ 23-04-02 WIL (0) | 2023.04.02 |
[항해99 / 온보딩주차] 🚢 23-03-20 ~ 23-03-26 WIL (0) | 2023.03.26 |