분류 전체보기
-
9주차 개념노트메가테라 2022. 10. 18. 08:40
fnm Fast Node Manager 의 약자이다. Node.js 버전을 관리할 수 있는 도구이다. fnm use 버전으로 사용할 Node.js버전을 쉽게 전환할 수 있게 해준다. npm 이란 Node Package Manager의 약자이다. Node Package들을 관리해주는 도구이다. 패키지를 쉽게 설치, 업데이트, 삭제할 수 있게 해준다. package.json 프로젝트가 의존하는 패키지들의 목록을 확인할 수 있다. scripts부분에 커스텀 스크립트도 등록할 수 있다. npm scripts 자주 사용하는 명령어를 등록해서 간편하게 사용할 수 있게 해준다. 등록한 명령어는 npm run 명령어 로 실행할 수 있다. 아래 명령어들은 npm start와 npm test처럼 run 없이도 실행할 수 ..
-
20221016 TIL 신기한 JS세계TIL 2022. 10. 17. 11:39
JS는 예상과 다른 결과를 보여주는 경우가 위의 경우처럼 많다. 왜 저런 결과가 나오는지 모를 때는 JS가 이상하다고 생각했었는데, JS가 자동으로 타입 변환을 해주는 과정(coercion)을 이해하면 그나마 JS의 직관과 다른 부분들을 예상할 수 있다. 자동 형변환 규칙 1. string + 무언가 무언가가 string으로 변환되어 문자열끼리 연결된다. ex. 9 + “1” === “91” 1. +이외의 연산 -, *, /, %등의 연산은 number타입으로 모두 변환되어 연산된다. ex. “1” - “1” === 0 91 - “1” === 90 true * “3” === 3 1. boolean + number boolean이 number로 형변환된다. true → 1, false → 0 ex. tru..
-
20221015 TIL Node.js에서 패키지를 실행 방법 총정리TIL 2022. 10. 17. 11:30
npm은 Node.js 패키지를 관리해주는 도구이다.npm 으로 global하게(-g옵션 추가)설치한 패키지는 패키지 이름으로 실행할 수 있다.만약 local하게 설치되어 있다면 그냥 패키지 이름만으로는 실행할 수 없다. ./node_modules/.bin/package-name 와 같이 실행해야 한다.혹은 npx package-name 으로 실행할 수 있다. npx는 Node.js패키지를 실행해주는 도구이다. 이 방식은 미리 설치되지 않은 패키지더라도 실행이 가능하다. npm으로 설치된 패키지를 실행하는 또 다른 방법은 package.json의 scripts부분에 추가해두면 npm run package-name 으로 실행할 수 있게 된다. 자주 실행하는 패키지나 명령어는 package.json에 scr..
-
20221017 TIL 핸드폰으로 코딩을 해보았다.TIL 2022. 10. 17. 11:10
오늘은 치과를 가야해서 오전에 코딩도장에 못 나갔다. 하지만 오전 스케쥴인 코딩 문제 풀기를 이대로 지나치기 싫어서 치과에 갔다오는 길에 지하철에서 핸드폰으로 코딩도장 문제를 풀어봤다. 이번 주부터는 자바스크립트를 배우기 때문에 자바와 자바스크립트 각각으로 코딩도장 문제를 풀었다. 에디터의 도움 없이 핸드폰으로 코딩을 하려니 import부터 손수 해야했다. 자바로 코딩을 할 때 최대한 for를 안쓰고 stream api를 쓰고 있는데 이번 문제에서는 IntStream이 필요했다. 에디터를 쓸 때는 와일드 카드를 안 쓰지만 에디터가 없으니 모든 것을 다 기억할 수 없어 import java.utils.*;을 하면 될 줄 알았는데 에러가 떴고, import java.utils.stream.*;을 해야 됐다...
-
메가테라 8주차 주간회고회고 2022. 10. 15. 11:38
이번 주는 Spring Boot으로 웹 어플리케이션 서버를 만들어보았다. heroku정책 변경으로 11월 이후에는 접속할 수 있을 지 모르겠지만 배포까지 했다! https://makaoletter-heyjyu.herokuapp.com/ https://todolist-heyjyu.herokuapp.com/ https://makaobank-heyjyu.herokuapp.com/ 위 링크에서 확인할 수 있다. html파일도 자바로 작성해서 css는 정말 최소한만 적용되어 있다. 확실히 Spring Boot 없이 웹 어플리케이션 서버를 만들었던 저번 주보다 더 재밌었고, 더욱 집중해야 될 부분(비즈니스 로직)에 집중해서 프로그래밍할 수 있었다. Spring Boot가 없었다면 의존성 주입을 하나하나 직접 관리해..
-
Heroku로 spring boot 프로젝트 배포하기개발 2022. 10. 14. 18:22
0. Prerequisites - Heroku 가입 - Create App https://dashboard.heroku.com/new-app - Install Heroku https://devcenter.heroku.com/articles/heroku-cli brew tap heroku/brew && brew install heroku 맥에서는 위의 코드를 이용할 수 있다. - 설치 확인 terminal에서 which heroku로 확인할 수 있다. - 터미널에서 heroku로그인 heroku login 하고 나서 하라는 대로 로그인하자. - 로그인 확인 heroku whoami 1. 빌드를 합시다! ./gradlew bootJar 2. 설정을 합시다! - 자바 버전 설정하기: 프로젝트 최상위에 syst..
-
20221014 TIL sort와 친해진 하루TIL 2022. 10. 14. 11:37
코딩테스트 문제를 풀다보면 정렬을 할 일이 많다. 꼭 자신을 정렬하는 경우 외에도 어떤 배열을 다른 배열에 따라 정렬해주고 싶은 경우가 있을 수 있다. 그래서 오늘 sort를 쓰는 문제를 푼 김에 sort를 어떻게 쓸 지에 대해 찾아보았다. 기본적으로 Arrays.sort()를 이용하면 오름차순으로 정렬이 된다. 그리고 아래와 같은 코드로 내림차순 정렬을 할 수 있다. Arrays.sort(array, Collections.reverseOrder()); 혹은 Arrays.sort(array, (i, j) -> -1); 그리고 원하는 대로 array부분의 배열을 정렬해주고 싶은 경우, Arrays.sort의 두 번째 인자(Comparator)를 조작해주면 된다. 예를 들어 Double값들이 들어간 arra..
-
20221013 TIL 순서를 보장해주는 Collection과 그렇지 않은 CollectionTIL 2022. 10. 13. 21:06
오늘 과제를 하던 중 놀라운 사실을 알게 되었다. 블로그 포스트 같은 포스트를 Map에 담고 있었는데, Map 인터페이스는 내가 넣은 순서대로 나오지 않을 수 있다. 컬렉션 프레임워크에 대한 기본적인 개념도 제대로 모르고 쓰고 있던 것 같아 급하게 찾아보았다. List 인터페이스는 순서가 있지만, Set이나 Map은 순서를 보장하지 않는다. 게시판에서 최신의 글일수록 위에 떠야 한다. 그 말은 순서가 있어야한다는 것인데, 물론 포스트의 작성 날짜 기준으로 소팅을 해서 어떻게든 구현할 수도 있긴 하겠지만 기본적으로 컬렉션 프레임워크들의 속성은 인지하고 있어야 했다. Map은 입력한 순서대로 나오는 게 보장이 되지 않는다. Map을 구현한 클래스 중 LinkedHashMap은 넣은 순서대로 보장이 되긴 하기..