클래스/└ 항해99
-
<WIL> 실전 프로젝트 3주차부터 최종발표회까지클래스/└ 항해99 2022. 6. 7. 23:07
🌊 # 11 ~ 13주차 진행사항 프런트엔드 구현부와 실제로 API 테스트를 진행하면서 수정할 부분들이 드러났습니다. 프런트에서 발생할 시나리오를 충분히 예상했다고 생각했지만 막상 실제로 구현하고 보니 오버페치, 언더페치된 부분이 많았습니다. 하나하나 수정해 나가면서 프로젝트가 완성되어가는 기분을 느낄 수 있었습니다. 실전 프로젝트를 진행하며 바쁘다는 핑계로 블로그 관리에는 소홀하였지만 배운점이 많습니다. 스스로 필요한 기능을 구현하기 위해 고민하는 과정에서 많은 성장을 할 수 있었던 점이 강의만 들으며 따라했을 때와 가장 큰 차이점인 것 같습니다. 무엇보다 혼자였다면 하지 못했을 프로젝트의 완성을 이루게 된 것이 가장 큰 성과라고 생각합니다. 최종발표회 (6.3) 최종설명회를 진행하며 멘토님과 여러 파..
-
<WIL> 실전 프로젝트 2주차 (외부 API 활용시간 단축)클래스/└ 항해99 2022. 5. 16. 10:30
🌊 # 10주차 진행사항 실전 프로젝트를 진행하면서 NestJS, TypeORM, Jest를 다루는 훈련을 하고 있습니다. 이슈 프로젝트에서 유저 주변으로 퀘스트를 생성해서 뿌려주는 로직이 있습니다. 외부 API(kakaI, 공공API)로 좌표와 주소값을 가져오는데 걸리는 시간을 단축시키기 위해 여러가지 고민과 시도를 하는 중입니다. 아래는 해당 로직의 프로세스 입니다. #1. (from 클라이언트) 유저의 좌표값을 받아옴 #2. (from kakao API) 유저의 좌표 값으로 지역(시/구/동) 데이터를 받아옴 #3. (from 공공 API) 지역 데이터로 지역의 개요(전체 주소 갯수 등)를 받아옴 #4. (from 공공 API) 지역의 개요를 활용해 지역 내 전체 주소 중 랜덤한 주소를 받아옴 (전체..
-
<WIL> 주특기(노드) 3주차 ~ 실전 프로젝트 1주차클래스/└ 항해99 2022. 5. 8. 22:31
🌊 # 8~9주차 8주차 진행사항 주특기 3주차에 TypeScript와 TypeORM 관련 과제가 주어졌습니다. 노드 주특기 분들끼리 실전에는 다같이 NestJS를 활용해 보자는데 의견이 모아졌습니다. 실전 프로젝트 대비를 위해 NestJS를 차근차근 익혀보았습니다. 9주차 진행사항 실전 프로젝트가 시작되었습니다. 기획, API 설계, ERD를 작성하고 피드백 받고 수정하고 하는 과정을 거치는 동안 거의 1주일이 지났습니다. 그리고 협업을 하면서 깃 충돌이 번번히 발생하여 애를 먹고 있습니다. 혼자 작업할 때는 별거 아닌줄 알았던 version control이 협업을 하기 위해서는 조금 더 많은 개념을 알고 있어야 한다는 것을 깨닫게 되었습니다. 현재 이슈 카카오 API와 juso.go.kr의 공공 AP..
-
<WIL> 주특기(노드) 2주차 진행사항과 N+1 문제클래스/└ 항해99 2022. 4. 25. 20:03
🌊 # 7주차 진행사항 주특기 2-3주차에는 로그인을 포함한 매거진 웹의 API를 만들면서 시작합니다. 이 API를 바탕으로 테스트 코드, 타입스크립트 등을 적용해 나가는 방식으로 진행하고 있습니다. 1주차와 비교해서 큰 차이점은 JWT를 활용한 로그인 구현과 MySQL이라는 관계형 DB를 다루게 된 것입니다. 특히 MySQL을 접하는 것이 DB에 대한 사고를 확장하는데 도움이 많이 된 것 같습니다. 테스트 코드 Jest를 활용하여 테스트 코드를 작성하였습니다. 함수 단위의 유닛 테스트 부터 API를 검증하기 위한 통합 테스트까지 하나씩 작성해 가면서 감을 익힐 수 있었습니다. 레이지 로딩, 이거 로딩, N+1 문제 (숙제...?) 매거진 웹의 게시글을 로드하면서 댓글까지 한꺼번에 불러오는 쿼리를 작성하..
-
<WIL> NoSQL에서 SQL로클래스/└ 항해99 2022. 4. 17. 23:51
🌊 # 6주차 노드 주특기 1주차 과제는 로그인 없는 게시글, 댓글 CRUD 구현이었습니다. 과제 자체는 어렵지 않아서 기한보다 조금 일찍 끝냈습니다. 디벨롭시킬 부분에 대해서 고민해 보았습니다. 로그인 등의 기능을 붙일 수도 있겠지만, TypeScript 마이그레이션을 해보기로 결심했습니다. 프로젝트 규모가 커지면 TypeScript 마이그레이션에 애를 먹을 것 같아 매도 먼저 맞는 놈이 났다고(?) 간단한 프로젝트에 적용해 보기로 했습니다. 실은 API 테스트, 테스트 코드 작성 등도 하고 싶었으나 프로젝트가 워낙 단순하여 의미없는 테스트를 하게 될 것 같아서 생략하였습니다. 다음번 이 2가지를 염두에 두고 과제를 진행하여 꼭 포함시키고자 합니다. 목요일까지 주특기 1주차를 마무리 짓고 2주차에 접어..
-
<WIL> 알고리즘 끝! 노드 시작!클래스/└ 항해99 2022. 4. 11. 23:37
🌊 # 5주차 알고리즘 2주차에서 5주차까지 4주간 진행된 알고리즘 학습이 일단락 짓게 되었습니다. 연결리스트, 스택 부터 시작해서 DFS, BFS, DP까지 머리 아팠지만 그만큼 얻은 것도 많은 과정이었습니다. 특히 코드의 흐름을 파악하는 능력이 향상된 것을 느낍니다. 노드 주특기로서 노드 학습을 시작하였습니다. 개인 과제를 진행하면서 코드 한줄한줄 제대로 이해하고 작성하려고 노력 중입니다. 항해톡 지난주에 항해톡 발표를 진행했습니다. 코로나 주간이라고 쉬어간 탓에 금주 내용으로 작성합니다. 트랜잭션을 주제로 발표하였고, 발표를 준비하면서 많은 것을 배울 수 있었습니다. 당연하게도 해당 주제에 대한 이해도가 높아집니다. 구체적으로는 대충 이해하고 넘어간 내용들을 다시 보게 되었습니다. 상대방에게 매끄럽..
-
-
<WIL> 알고리즘, 어려운 것, 낯선 것클래스/└ 항해99 2022. 3. 27. 23:39
🌊 # 3주차 심화반을 선택한 관계로 알고리즘이 4주 동안 진행됩니다. 알고리즘에 집중하고 싶었다. 라기보다는 심화반을 선택하는 동료들에게 자극을 받고 싶었습니다. 하지만 하루 종일 알고리즘 풀이를 하는 것이 쉽지만은 않습니다. 당장 프로그래밍 실력이 향상되는 것 같지도 않고, 게다가 알고리즘 풀이 조차도 늘고 있는 것인지 애초에 풀수 있던 문제일 뿐인지 헷갈리기도 합니다. 그럼에도 얻는 것이 있다면 복잡한 구조의 코드를 해석하고 흐름을 이해한다는 것입니다. 반복문과 조건문이 중첩되기 시작하면 코드의 흐름을 따라가기가 어려웠습니다. 자료구조를 비롯한 알고리즘 학습을 집중적으로 하면서 흐름을 따라가는 것이 한층 수월해짐을 느낍니다. 어려운 것이 아니라 낯선 것이었습니다. 늘 그렇듯이. 코드를 작성할 때도 ..