2021.06.04 - [공부] - [패스트캠퍼스 서포터즈 3기] node.js 초격차 패키지 강의 후기
2021.06.12 - [공부] - [패스트캠퍼스 서포터즈 3기] NODEJS 초격차 패키지 강의 후기 2 (크롤링 모듈)
2021.06.20 - [프로그래밍] - [패스트캠퍼스 후기] 서포터즈 3기 - NODEJS강의 후기 3 (Axios Cheerio)
안녕하세요!
풀스택개발자를 꿈꾸는 aSpring입니다.
제가 패스트 캠퍼스 서포터즈 3기에 지원한 이유가
바로 풀스택개발자라는 꿈을 이루기 위해서인데요!
서포터즈 활동을 하면 무료로 수강할 수 있는
강의 목록에 풀스택개발자를 위한 노드JS 강의가 있답니다!
매 기수마다 신청할 수 있는 강의 목록은 다른데
js에 너무너무 약한 저는... 노드JS 강의로 골랐지요! ><
사실 국비지원 학원을 다니면서 배운 건 java, spring이지만
다른 언어도 배우고 싶었어요!
제가 이전 글에서도 계속..
노드JS 강의인데 노드JS는 뭔지 아직도 모르고
크롤링, VSCode 나온다고 당황해했었잖아요?
그런데 드디어어어~!!
노드JS 강의가 오픈을 했어요 ><
엇 이거 이모티콘 원래 쓸 수 있었나요?
전 왜 처음 보는 것 같죠?
아닌가..?
아무튼 크롤링은... 앞에 노드JS 강의를 먼저 듣고!
마저 이어서 들으려고 해요!
두근두근~
짠짠~! 드디어 백엔드 1, 2 강의가 오픈 되었습니다~!
보니까 Node.js, VSCode, npm, TypeScript, RESTful API, JSON, 리팩토링,
웹소켓, MongoDB 이런 내용들이 들어가있고
OMG!!!
Github !!!! Github 관리도 포함되어 있어요!!!!
풀스택개발자 꿈나무...인데... 전 사실 Github 알못이거든요!!! T^T
그래소 목차보고 얼마나 좋았던지><><
너어어어어어무 기대돼요!!!!!
이게 노드JS 강의이지만 풀스택개발자를 위한 강의라서 그런지
Github관리도 알려주시나봐요!!!
짱짱입니다! 엄지척!
그래서 다음 기수 모집은 언제라구요?
그때는 java/spring...♥ 목록에 다시 넣어주시면 안될까효오
신규 런칭이 아니라서 안되려나T^T
(뽑아주신다고도 안했는뎈ㅋㅋ)
♥사랑해요 패스트캠퍼스♥
일단 흥분을 가라앉히고 처음부터 찬찬히 들어볼게요!
백엔드 part 1.
Ch 01. Node.js 소개
그래요! 그래서 도대체 노드JS가 뭘까요??
드디어 밝혀지는 Node.js의 정체!!
Node.js
javascript의 런타임이다 !
?
js는 스크립트 언어로 한 줄 한 줄 실행되는 언어
문서의 영역을 동적으로 바꾸는 역할
HTML에서 댓글을 달거나 삭제하면 새로고침을 눌러줘야지
반영이 된 화면을 볼 수가 있었는데
js로 인해서 내가 새로고침을 번거롭게 눌러주지 않고도
바로 뿅!하고 댓글이 달리거나 삭제가 된걸 확인할 수 있다!
V8 js engine을 이용해 서버에서 동작하는 런타임 언어를 만든 것이 Node!!
<자바스크립트의 생태계와 Node의 역사>
와.. js가 1위네요.
한 언어로 풀스택 구현이 가능하다고 해요!
java는 python한테 밀리는군요!
홀린듯이 2강..
Node.js를 만든 사람 : Ryan Dahl
고전적인 처리 방식 -> 한 줄 처리하고 기다리고... 다음 처리하고 기다리고...
이런 고전적인 요청하고 기다리기 방식은 너무 많은 클럭 수를 낭비
-> Javascript식 비동기 처리 방식을 이용해야 한다!(Call back)
-> 전 단계 코드의 응답이 오기 전에도 다음 줄의 코드를 실행할 수 있다!
Offloading
저수준의 오래 걸리는 일은 Node에게,
고수준의 로직은 메인 스레드에서.
- Node가 빠른 속도와 매우 높은 확장성을 갖는 근본적인 이유
js 자체만의 한계도 존재
-> 저수준 처리..!
저수준 처리는 Node가 빠르게 처리하기 매우 어려운 부분.
Node.js는 이미 빠른 C와 WebAssembly 모듈을 바인딩해 사용하는 방법을 제공하여
저수준 처리를 개선!
C -> node-gyp
WebAssembly -> Node 12 버전부터 제공
npm
방대한 오픈 소스 생태계
또 홀릿듯 3강...
자야하는데 누가 좀 말려줘요..
앞으로 배울 내용에 대해서 이론적인 지식? 개념? 이런 것들을
설명 해주시니까 너무 좋아요!
Glitch로 설정 없이 바로 Node 웹 서버 코딩해보기
특별한 설치 없이 Node 코딩 체험해보기
웹 환경에서 바로 코드를 작성할 수 있다
-> 코드 샌드박스, Glitch
그냥 홈페이지가 너무 예뻐서 스샷!
Glitch에서
Node서버를 바로 띄울 수 있고 코딩도 바로 할 수 있다!
원래 환경설정이 제일 어려운데 무설치라니 너무 좋습니다!
(지금은 밤이라.. 환경설정 하자고 하면
오늘은 여기까지만 들으려고 했거든요.. 헤..)
일단 Glitch에 가입을 하고
(Github으로 가입이 되네요!
사용할 줄은 모르지만
Github 아이디만 가지고있는 자.. 나야나..)
Minimal Node
클릭 클릭!
이렇게 뿅! 에디터가 다 준비되어 있고
우리는 코딩만 하면 된대요!
좌측에 server.js를 눌러서 기존에 작성되어있는 코드는 모두 지우고
이곳에서 코드를 작성해줄거에요!
<간단한 http 서버 만들기>
const http = require('http') // 1. require : 어떤 모듈을 사용하겠다 -> http라는 js의 기본 모듈 사용
// http로 서버를 만들 수 있음
const server = http.createServer((req, res) => { // 2. () 안에 call back -> 인자 2개를 갖고
/* 요청이 들어왔을 때, 어떤 응답을 돌려줘야 할 지 정해줘야 함 */
res.statusCode = 200 // OK
res.end('Hello!') // 'Hello!'라는 text를 보내면서 response 끝
}) // 3. 서버 객체 만들기 -> 포트에 물려있어야 외부에서 등어오는 응답에 반응 가능
const PORT = 3000 // 3000번 포트
server.listen(PORT, () => { // 4. 근데 listen()을 하려면 어떤 포트에서 들을 것인지? 3000번 포트
console.log('The server is listening at port', PORT) // 5. 잘 됐으면 메세지 출력!
})
주석 때문에 정신없어 보이지만..
실행해봅시다.
Hello!!!
옆에 코드를 변경하면 잠시 후에 바로 반영이 딱 되네요!
서버가 바로 다시 실행이 된 것이래요!
App Status도 확인할 수 있고
Tools에서는 log, Terminal도 볼 수 있어요
오옹..
다시 돌아가서 Show > In a New Window를 클릭하면
짠.. 접속이 되었어요!
그냥 코드를 짰을 뿐인데 웹상에서 호스팅이 되고 있는 거래요!
Wow...
실제로 진행을 할 때는 VSCode를 설치하고 이것저것 설정을 하고
강의를 계속 이어나간다고 해요!
간단하게 작업할 때!
Node 서버 프로토타이핑을 할 때는 코드 샌드박스, Glitch 서비스 이용하기!
앗. 다음 강의는 VSCode 설치하기네요!
개발 환경 설정은 언제나 복잡한 것...
저한테는 VSCode가 이미 설치되어 있지만!
음.. 경험상 설치만 되어있다고 해서
다 끝난게 아니더라요?
그래서 저는 오늘 강의는 여기까지 듣고
5회차 후기 때 개발환경 세팅을 하도록 하겠습니다!
맞아요. 저도 배우면 바뀔 수 있어요!
여러분도요!
앗 잠시만요.
엑셀유치원이요?
신청 할까요?
왜이렇게 하고싶은 게 많죠?!
여러분 달려가세요
패스트캠퍼스 홈페이지로!!
'프로그래밍' 카테고리의 다른 글
[노마드 코더] 바닐라 JS로 크롬 앱 만들기 - Day 1 (0) | 2021.06.30 |
---|---|
[패스트캠퍼스 서포터즈 3기] 풀스택개발자를 위한 패스트캠퍼스 노드JS 후기 5 (마지막 후기) (0) | 2021.06.26 |
[패스트캠퍼스 후기] 서포터즈 3기 - NODEJS강의 후기 3 (Axios Cheerio) (0) | 2021.06.20 |
[스파르타코딩클럽 : 추억소환 코딩 패키지] 웹페이지 무료 특강 (0) | 2021.05.05 |
[사무자동화산업기사] 사자기 자격증 준비하기 A to Z (23) | 2021.01.03 |