배경 React.js 프론트엔드 개발자에 대한 길을 열어두게 되면서 자바스크립트 코딩테스트를 준비할 필요성을 느꼈다. 요즘 많은 프론트엔드 직군의 코딩테스트에 JS가 요구되기 때문에 크래프톤 정글 코치님들도 코테를 아예 JS로 준비할 것을 권장하셨다. 그래서 문제를 풀어보면서 익숙해지는 중인데... 어려운 건 아니지만, "번거롭다". 입력 JS 코테의 가장 번거로운 부분이 바로 "입력"이다. 태그로 입력을 받는 웹 개발과는 달리 콘솔 입력을 받기 위해서는 "fs"와 "readline"이라는 별도의 라이브러리를 호출해야 한다. JS의 태생이 일반 개발 언어가 아니라 웹 개발 언어임을 고려하면 이해할 수 있는 부분이지만... 그래도 번거롭다. Node.js 에서 입력을 받기 위해서는 라이브러리를 호출해야 한..
배경 나만무 프로젝트에서 FE를 맡고 ReactJS를 배우며 JS의 기초 또한 배웠다. 그러다보니 다른 언어 대비 JS만의 특징이 굉장히 새로웠는데 그 중에서도 어이가 없었던 것을 적어보고자 한다. 배열의 합 파이썬의 경우, 내장 함수의 sum(array)을 쓰면 바로 끝난다. 그러나 JS에서는 그런거 없다. Math 라이브러리에 abs()나 삼각함수는 있지만 sum은 없다. 그럼 도대체 어떻게 계산하는걸까? 진짜 너무 듣도보도 못한 방식이라 신기했다. const arr = [1, 2, 3, 4, 5]; const sum = arr.reduce((accumulator, currentValue) => accumulator + currentValue, 0); console.log(sum); 차라리 sum()..
초고 나만무 프로젝트를 시작하며 백엔드 개발에 Node.js + Typescript를 선택했다. 그에 관한 이유를 정리하고자 한다. 이점 단일 언어: Node.js는 JavaScript를 기반으로 한다는 점에서 프론트엔드와 백엔드 개발을 동일한 언어로 처리할 수 있습니다. 이로써 개발 팀은 다른 언어를 익히는 시간과 리소스를 줄일 수 있으며, 코드 공유와 재사용이 용이해집니다. 비동기 프로그래밍: Node.js는 이벤트 기반 및 비동기 프로그래밍 모델을 채택하고 있어, I/O 작업에 특히 효율적입니다. 이는 서버의 성능을 향상시키고 동시 요청 처리를 처리하는 데 이점을 제공합니다. 확장성: Node.js는 확장성이 뛰어나며, 수천 개의 동시 연결을 처리할 수 있습니다. 이는 대규모 애플리케이션 및 실시간..