본문 바로가기

카테고리 없음

2022년 7월 24일 개발일지

요즘 프론트엔드 작업을 하면서 , 깨닫는것이 프론트는 백엔드가 필요하고 , 백엔드는 프론트가 필요하다는것을 많이 깨닫습니다 . 

사이드프로젝트를 할 때에 백엔드가 없으니 open api를 찾아다니게 되고 , 그러다보니 api에 맞춰서 무엇을 해볼까 고민하게 되었습니다 .

 

그러다가 이럴바엔 내가 api를 만들어보자 해서 회사에서 사용하는 go lang과 javascript 기반인 nest js중에 무엇을 할까 고민하다가 ,

자료가 훨씬 방대하고 공부하기 쉬운 nest를 배워보기로 했습니다 .

 

nest란 express.js의 프레임워크개념이고 , express js 는 node js의 프레임워크같은개념이라 , 

밑바닥 부터 시작하기 위해서 node js를 공부하고있습니다 .

 

오늘부터 시작했기때문에 배운건 많이 없긴 하지만 ,

첫번째로 느낀점은 역시 많이 익숙하다 입니다 .

langauge가 javascript이기 때문에 , 프론트에서 사용하던 방식과 개념은 조금 달라도 백엔드 knowledge에 익숙하지도않지만 무엇인가 편안함을 느꼈습니다 .

 

두번째로 평소에 궁금하던것들이 많이 나와서 좋았습니다 .

require가 도대체 어떤것을 의미하는지 , __dirname , 이런것들이 무엇인지 , 이번 공부를 통해 알아가는 재미를 느껴서 좋았습니다 .

 

node의 개념 , 브라우저 환경에서와 서버 환경에서 자바스크립트를 어떻게 사용할것인지 ,

common js 에 대해 많이 배웠습니다 .

 

node js 의 개념

As an asynchronous event-driven JavaScript runtime, Node.js is designed to build scalable network applications. 

비동기적으로 javascript를 실행시키는  런타임

 

common js 와 es6 module이 다른 점

ES6 modules are pre-parsed in order to resolve further imports before code is executed. CommonJS modules load dependencies on demand while executing the code.

ES6 는 코드가 실행되기전에 파싱을하고 , commonjs는 코드가 실행될때 dependencies를 실행한다 . 

 

global variables

__dirname - path to current directory
 __filename - file name
require - function to use modules (CommonJS)
module - info about current module (file)
process - info about env where the program is being executed
 
dirname : 폴더 디렉토리 주소 path 값
filename : 파일 이름
reuqire : module을 불러올때 , third-party 라이브러리나 , 다른 js파일의 함수를 가져오거나 , 값을 가져오거나 할때 사용 
es6에서는 import를 합니다 .
process : 환경에대한 정보를 제공 , 해당파일에대한 정보만제공합니다 .