사건의 발단
발단… 이라고 까지는 뭐하지만 내가 요즘 회사 내 프로젝트를 하느라고 정신이 없음…맨날 포토샵하고 제플린, 필요하면 인비전까지 손대고 있기는 한데 시간이 없어서 개발까지 살펴보지 못함….
그래서 회사에서 개발하는 것 손가락만 빨며 보기 일쑤인데 그것마저도 회사 전체가 바빠서 개발자들한테 물어보기도 뭣함…그런데 나도 개발이란 것을 해보고 싶음. 그래서 간단하게 노드부터 시작해보기로 함.
앞으로 배울 것들
하지만 배울 것은 아직 엄청엄청 많음.
인비전, 피그마, BEM, OOCSS 등등. 뭐 이렇게 보니 다 다 방법에 관한 것들이라 프로젝트 들어갈 때 하나씩 스터디 해가면서 적용해보면 될듯.
일단 node
node가 뭔가요
간단히 들은 설명으로는 인터넷 서버(브라우저)에서 결과를 볼 수 있던 자바 스크립트를 로컬서버(내 컴터)에서도 간단히 볼 수 있도록 하기 위해 노드를 쓰는 것이라고 한다. 서버에 올리지 않고도 볼 수 있는 것.
노드는 또한 모듈로 각 부분을 쪼개 놓는 것을 가능하게 한다. 모듈로 쪼개면 보기도 편해지고, 가벼워지고, 관리도 쉬워지는 장점이 있다.
Hello node
노드를 실행하는 방법은 생각보다 간단했다.
일단 뭔가 볼 수 있는 자바 스크립트 파일을 만든다.
|
|
노드를 깔고 명령 프롬프트에 node + 해당 파일 이름을 입력한다.
|
|
그럼 명령 프롬프트에서 결과를 볼 수 있음.
node 기초
내부 모듈 만들기
내부 모듈을 함 만들어 보겠음. calc.js 라는 이름으로 파일을 하나 만듦니다.
|
|
얘가 모듈, 더하기 기능을 밖으로 뺐다고 생각하자…
그리고 이것을 다른 파일에서 불러다 써보도록 하자
|
|
외부 모듈 가져다 써보기
외부 모듈을 만들기 전에 일단 어떻게 외부 모듈을 가져와서 쓸 수 있는지 알아보자.
폴더를 만들어서 노드 프로젝트로 등록하자.
mymoment라는 폴더를 생성. 이 위치에npm init
라는 명령어로 package.json 파일을 생성. 패키지 제이슨 파일에서 이 프로젝트에 쓰이는 외부 패키지들을 관리(?)할 수 있다.(“dependencies”) 이 패키지 파일을 프로젝트 별로 생성하게 되는데 그 이유는 프로젝트별로 사용하는 패키지와 버전이 각기 다르기 때문
script에서는 특정 동작에 대한 명령어를 만들 수 있다. ex)hexo smoment.js 를 설치해보자.
mymoment 폴더 위치에npm install moment --save
를 입력. 그럼 자동으로 모멘트 js가 깔린다. 참고로 모멘트는 날짜 계산을 쉽게 도와주는 모듈. 모듈을 설치하면 package.json 파일의 dependencies에"moment": "^2.21.0"
가 추가된 것을 확인할 수 있다.1234567891011121314{"name": "mymoment","version": "1.0.0","description": "","main": "01.js","scripts": {"test": "echo \"Error: no test specified\" && exit 1"},"author": "","license": "ISC","dependencies": {"moment": "^2.21.0"}}moment.js불러오기
1234567var moment = require('moment');function nextMonth(){return moment().add(1, 'M');}module.exports = {nextMonth};
모멘트를 불러온 후, 다음달을 계산하는 함수를 생성해서 내보내는 모듈
이렇게 하면 이제 외부 모듈을 가져와서 사용할 수 있다.
모듈을 만들어보자
.gitignore
파일 만들기
git에 올려야 하는데node_modules
은 제외하고 올려야 하니.gitignore
파일 만들어서/node_modules
적어주기git에 새로운 repository 만들어서 올리기
그리고 주소 복사.설치하는 방법은 아까와 마찬가지로 해당 파일 위치로 가서
npm install git주소(복사한 것)
을 입력하는 것.그러면 package.json 에서도 mymoment 라는 외부 모듈이 깔린 것을 확인 할 수 있다.
내가 만든 모듈을 사용해 볼까.
아까 다음달을 구하는 모듈을 만들었었다.
그러면 그것을 불러와서 사용해 보자.
|
|
이렇게 파일을 작성하고 노드를 실행하면 결과를 볼 수 있다.