목록개발자 학습노트 (46)
개발자의 logs
![](http://i1.daumcdn.net/thumb/C200x200/?fname=https://blog.kakaocdn.net/dn/bRdku7/btrG8RtAXy1/A6PKonLuN1V7bb0NSTgkLk/img.png)
항해 마지막 파이널 실전 3주차! 기획도 어느정도 나오고, api들도 80% 정도는 완성되었다 생각하여 swagger 작업에 돌입했다. 전에 클론 프로젝트때 만들어봤어서 그런지 , 만드는데 노가다적인 부분(?) 빼고는 금새 만들었다. 한 2-3시간에 다 만든듯!!! 스웨거는 포스트맨(api test로 주로 쓰이는 프로그램) 대용으로 쓰이며, 특히 프론트엔드 분들이 개발하실때 유용하다고 한다. 어떤 코드를 삽입하지 않은 상태에서 api 자체로만으로 돌아가는지 테스트하기에 정말 적합하다. 내가 swagger를 만들때 참고한 사이트를 공유해본다 ! https://velog.io/@hyex/Node.js-TS-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8%EC%97%90-swagger-%..
![](http://i1.daumcdn.net/thumb/C200x200/?fname=https://blog.kakaocdn.net/dn/bLgC3Q/btrGUrbfCa2/YuS43DpirNVY2j4khwKKSk/img.png)
9주차 WIL 실전 프로젝트가 시작되고 2주차가 지났다. 이번주에는 나는 주로 미들웨어 로직수정과, 엑세스토큰과 리프레시 토큰 미들웨어 수정, 서버배포 환경 구축에 힘을 쏟았다. 미들웨어는 소셜로그인 유저와 일반유저의 스키마를 통일하고, 그 안에서 같이 유저정보를 조회하게 함으로써 생각보다 간단하게 끝났다. 다만 docker와 nginx는 다소 어려웠다. docker,nginx 라는 것을 처음 배우기도 했고 완전 본격적인 서버배포환경 구축 같았다. 여러 시도를 했고, 블로그 글과 stackover 글들을 뒤져가며 도커는 완성! 했다 아래는 Dockerfile이다 FROM node:14 WORKDIR /app // 워크 디렉토리 만들기 COPY package*.json ./ RUN npm ci // 이 부..
![](http://i1.daumcdn.net/thumb/C200x200/?fname=https://blog.kakaocdn.net/dn/vg0XG/btrGnhHqUlM/Tj32gNTC8bAKgsxeQaDbQ1/img.png)
성공했다 passport에서 데이터를 꺼내오는 것을~~!!! 거의 3일간 밤낮없이 시도했는데, 드디어 오늘 새벽에 성공했다. 같이 작업하던 프론트 형과 소리지를뻔...ㅎㅎ 프론트의 도움없이는, 프론트와 협업없이는 불가능한 일이였다. 형섭이형 정말 고마워!!!! 자신감 붙었다. 그대로 KEEP GOING!
![](http://i1.daumcdn.net/thumb/C200x200/?fname=https://blog.kakaocdn.net/dn/qH1fq/btrGksva1ze/6hDo1FoacxaRFNVst3yLCk/img.jpg)
마지막 실전 프로젝트의 서막이 올랐다. 아마 지금까지의 노력은 이번 프로젝트를 위한 노력이였을거다 이번에는 front 2 backend3 (나포함) 으로 팀이 배정되었다. 난 처음에 소개팅 웹서비스를 가져갔지만, 팀원들과 회의하고 논의한 결과, 협업툴 웹서비스로 변경되었다. 소개팅 웹서비스가 재밌을것 같아서 많이 아쉬웠지만, 팀원 모두가 흥미를 가지고 진행하는 프로젝트 주제가 맞다고 생각하기 때문에 그 점을 생각하면 마음이 편안하다. 실전 프로젝트에서는 지금까지는 나는 passport 개발을 맡았다. 프론트에서 인가코드를 넘기면 나는 카카오 or 구글 측과 통신해서 엑세스토큰을 발급 받고, 개인정보를 다시 서버에 요청하는 작업이였다. 이 부분에는 여러 변환된 로직과정이 존재하는데, 난 이 부분을 선택했다..
# 시간초과 => pypy3 제출 베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다. 이 명제는 조제프 베르트랑이 1845년에 추측했고, 파프누티 체비쇼프가 1850년에 증명했다. 예를 들어, 10보다 크고, 20보다 작거나 같은 소수는 4개가 있다. (11, 13, 17, 19) 또, 14보다 크고, 28보다 작거나 같은 소수는 3개가 있다. (17,19, 23) 자연수 n이 주어졌을 때, n보다 크고, 2n보다 작거나 같은 소수의 개수를 구하는 프로그램을 작성하시오. import sys def sosu(num): for i in range(2, int(num**0.5)+1): if num %i ==0: return Fals..
부트캠프측에서 주관하는 것이 아닌 , 개인적으로 하는 기술면접 스터디 모임에 최근에 참여하게 됐다. 난 좋은 코드란 무엇인가에 대해서 질문을 준비해 가기로 했다. 인터넷에 좋은 코드란. 이라고 검색해보니 많은 결과가 나온다 . 하지만 내가 와닿는 부분이 아니라 그런지 , 입에 착 달라붙지는 않는다. 개인적으로 아직 개발자라고 하기엔 많이 부족한 상태이지만 지금까지의 경험으로 말해보자면, 내가 생각하는 좋은 코드란 , 동료들에게 코드에 대한 궁금함이나 의문이 남지않는 코드라고 생각한다. 내가 짠 코드에 대해 누군가 의문을 가졌다는 것은 코드를 가독성있게, 쉽게 짜지 못했다는 뜻일 것이다. 어렵고 간결한 코드보다는, 길더라도 가독성이 있는 코드가 좋다고 생각한다. 또한 동료에게 궁금함이 적게 남을수록 협업 ..