Language/Javascript

[javascript 자바스크립트] NPM, 그리고 YARN

웹 개발을 할 때, 현재 프런트는 React, Next를 사용하고 백앤드는 express와 Nest를 사용하고 있습니다. 모두 자바스크립트 기반(?)으로 운영이 되고 있는데 지금까지 패키지 매니저는 NPM을 사용했습니다. 이번에 백앤드를 리뉴얼 하면서 YARN으로 패키지 매니저를 바꿨는데 왜 바꿨는지, YARN이 NPM보다 좋은 이유는 무엇인지, 그러면 NPM은 무엇인지에 대해 정리를 해보려고 합니다. NPM? 가장 유명한 자바스크립트 패키지 매니저로, 자바스크립트 개발자들이 가장 많이 쓰는 node.js의 기본 패키지 관리자이기도 합니다. 수많은 개발자들이 제작한 패키지를 자유롭게 공유하는 세계 최대의 패키지 저장소로, 어마어마한 자료와 커뮤니티를 기반으로 거대한 개발 생태계가 구축되어있습니다. htt..

2021.11.12 게시됨

자료구조 & 알고리즘/백준(Baekjoon)

[백준] 10942(파이썬) - 팰린드롬?

https://www.acmicpc.net/problem/10942 10942번: 팰린드롬? 총 M개의 줄에 걸쳐 홍준이의 질문에 대한 명우의 답을 입력으로 주어진 순서에 따라서 출력한다. 팰린드롬인 경우에는 1, 아닌 경우에는 0을 출력한다. www.acmicpc.net 이 문제를 읽고 든 생각은 1000000... 2000....? 무조건 시간 초과가 안 걸려야겠구나 였습니다. 시간 초과를 해결하면서 생각할 수 있는 해법은 DP를 이용한 풀이였습니다. 일단 팰린드롬이 되기 위한 조건을 생각해봅시다. 일단 숫자 하나는 무조건 팰린드롬이 됩니다. 숫자 2개일 경우, 숫자가 같으면 팰린드롬이 됩니다. 숫자가 3개일 경우 양 끝 값이 같으면 팰린드롬이 됩니다. 그리고 공통적으로 생각 할 수 있는 조건은 양끝..

2021.11.09 게시됨

Language/Javascript

[javascript] 논리연산자, 제대로 알고 쓰자

코드를 짜다보면, 논리 연산자를 사용해야 하는 경우가 많습니다. 제가 최근에 짠 아래 코드를 볼까요?(정말...'이게 최선인가?'를 몇 번이고 생각하면서, 일단은 만든 코드입니다) 리액트에서 랜더링 해주는 페이지 중 일부 입니다. 보다시피 리액트에서 조건부 렌더링을 구현할 때 function을 위해서 정의해 주는 방식 말고 이렇게 직접적으로 사용하는 경우가 종종 있습니다. 제가 짠 코드를 간단하게 설명드리자면, user가 없을 때 (로그인이 되어있을 때 받아오는 props값) user가 있는데 wallet_address가 없을 때 user 도 있고 wallet_address가 있는데 eventStatus가 없을 때 user 도 있고 wallet_address도 있고 eventStatus도 있을 때 의 순..

2021.11.03 게시됨

Back-end/DB

[MongoDB] Mongoose 사용시 ObjectId 와 String의 관계

https://stackoverflow.com/questions/6578178/node-js-mongoose-js-string-to-objectid-function Node.js Mongoose.js string to ObjectId function Is there a function to turn a string into an objectId in node using mongoose? The schema specifies that something is an ObjectId, but when it is saved from a string, mongo tells me it is still just a stackoverflow.com 최근 회사에서 개발을 할 때 MongoDB를 사용합니다. 가장 대중화된 ..

2021.10.29 게시됨