생활코딩! Node.js 노드제이에스 프로그래밍 (ebook)

처음 프로그래밍을 시작하는 입문자의 눈높이에 맞춘

생활코딩은 일반인에게 프로그래밍을 알려주는 것을 목적으로 하는 비영리 교육 활동으로, 이 책은 생활코딩에서 제공하는 수업 가운데 WEB2 – Node.js 수업을 정리한 책입니다.

이 수업은 프로그래밍을 처음 시작하는 분들의 눈높이에 맞게 만들어진 강의로서 동영상이나 텍스트만으로도 학습할 수 있게 만들어져 있습니다. 이 책에서는 동영상 수업 내용을 토대로 개발 환경을 최신 내용으로 반영하고 수업 내용을 좀 더 이해하기 쉽게 다듬고 정리했습니다.

프로그래밍을 처음 접하는 분들도 이 책의 내용을 따라하는 과정에서 자연스럽게 Node.js 프로그래밍을 익힐 수 있을 것입니다.

★ 이 책에서 다루는 내용 ★

  • 자바스크립트 기초
  • Node.js 기초와 응용
  • Node.js와 MySQL 연동
  • Express 프레임워크
  • 쿠키와 세션을 활용한 인증
  • Passport를 활용한 인증
  • 다중 사용자 시스템
  • 구글/페이스북 로그인

★ 참고 자료 ★

 

도서 상세 이미지

이고잉

생활코딩 운영자

오픈튜토리얼스(https://opentutorials.org/) 운영진

  • ▣ 1장: 자바스크립트와 Node.js 편
    • 01 Node.js 시작하기
    • 02 수업의 목적
    • 03 Node.js–설치
    • 04 Node.js–공부 방법
    • 05 Node.js–웹 서버 만들기
    • 06 자바스크립트–데이터 타입
    • 07 자바스크립트–변수
    • 08 자바스크립트–템플릿 리터럴
    • 09 Node.js–URL 이해하기
    • 10 Node.js–URL로 입력된 값 사용하기
    • 11 App–동적인 웹 페이지 만들기
    • 12 Node.js–파일 읽기
    • 13 App–파일을 읽어서 본문 구현하기
    • 14 자바스크립트–Boolean
    • 15 자바스크립트–비교 연산자
    • 16 자바스크립트–제어문
    • 17 자바스크립트–조건문
    • 18 자바스크립트–콘솔에서 입력받기
    • 19 App–오류 페이지와 홈페이지 구현
    • 20 자바스크립트–반복문
    • 21 자바스크립트–배열
    • 22 자바스크립트–배열과 반복문
    • 23 Node.js–파일 목록 알아내기
    • 24 Node.js–글 목록 출력하기
    • 25 자바스크립트–함수
    • 26 App–함수를 이용해 코드 정리하기
    • 27 수업의 정상
    • 28 Node.js–동기와 비동기 그리고 콜백
    • 29 Node.js-패키지 매니저와 PM2
    • 30 HTML–Form
    • 31 App–글 생성 UI 만들기
    • 32 App–POST 방식으로 전송된 데이터 받기
    • 33 App–파일 생성과 리다이렉션
    • 34 App–글 수정(수정 링크 생성)
    • 35 App–글 수정(수정할 정보 전송)
    • 36 App–글 수정(수정된 내용 저장)
    • 37 App–글 삭제(삭제 버튼 구현)
    • 38 App–글 삭제 기능 완성
    • 39 자바스크립트–객체의 형식
    • 40 자바스크립트–객체의 반복
    • 41 자바스크립트– 객체(값으로서의 함수)
    • 42 자바스크립트–객체(데이터와 값을 담는 그릇으로서의 함수)
    • 43 App–템플릿 기능 정리정돈하기
    • 44 Node.js–모듈의 형식
    • 45 App–모듈의 활용
    • 46 App–입력 정보에 대한 보안
    • 47 App–출력 정보에 대한 보안
    • 48 수업을 마치며
    •  
  • ▣ 2장: MySQL 편
    • 01 수업 소개
    • 02 실습 준비
    • 03 mysql 모듈의 기본 사용법
    • 04 mysql 모듈을 이용한 홈페이지 구현
    • 05 mysql로 상세 보기 구현
    • 06 mysql을 이용한 글 생성 기능 구현
    • 07 mysql로 글 수정 기능 구현
    • 08 mysql로 글 삭제 기능 구현
    • 09 JOIN을 이용한 상세 보기 구현
    • 10 글 생성 구현
    • 11 글 수정 구현
    • 12 수업의 정상
    • 13 Node.js의 DB 설정 정보 정리
    • 14 Node.js 코드 정리
    • 15 저자 관리 기능 구현
    • 16 저자 목록 보기 기능 구현
    • 17 저자 생성 기능 구현
    • 18 저자 수정 기능 구현
    • 19 저자 삭제 기능 구현
    • 20 보안: SQL 인젝션
    • 21 보안: 이스케이프
    • 22 수업을 마치며
    •  
  • ▣ 3장: Express 편
    • 01 수업 소개
    • 02 실습 준비
    • 03 Hello world
    • 04 홈페이지 구현
    • 05 상세 보기 페이지 구현
    • 06 페이지 생성 구현
    • 07 페이지 수정 구현
    • 08 페이지 삭제 구현
    • 09 익스프레스 미들웨어 사용하기
    • 10 익스프레스 미들웨어 만들기
    • 11 미들웨어의 실행 순서
    • 12 정적인 파일의 서비스
    • 13 에러 처리
    • 14 라우터
    • 15 보안
    • 16 익스프레스 제너레이터
    • 17 수업을 마치며
    •  
  • **▣ 4장: 쿠키와 인증 편 **
    • 01 수업 소개
    • 02 실습 준비
    • 03 쿠키의 생성
    • 04 쿠키 읽기
    • 05 쿠키 활용
    • 06 세션(Session)과 영구 쿠키(Permanent 쿠키)
    • 07 쿠키 옵션(Secure와 HttpOnly)
    • 08 쿠키 옵션(Path와 Domain)
    • 09 쿠키를 이용한 인증 기능 구현
    • 10 수업을 마치며551
    •  
  • ▣ 5장: 세션과 인증 편
    • 01 수업 소개
    • 02 express-session 미들웨어 구동
    • 03 express-session의 옵션
    • 04 express-session의 session 객체
    • 05 express-session의 session store
    • 06 express-session을 이용한 인증 구현
    • 07 수업을 마치며
    •  
  • ▣ 6장: Passport.js 편
    • 01 수업 소개
    • 02 Passport.js 설치
    • 03 인증과 구현
    • 04 자격 확인
    • 05 세션 이용
    • 06 로그인 확인
    • 07 로그아웃
    • 08 플래시 메시지
    • 09 플래시 메시지 적용하기
    • 10 리팩터링
    • 11 수업을 마치며
    •  
  • ▣ 7장: 다중 사용자 편
    • 01 수업 소개
    • 02 수업의 목적
    • 03 회원 가입 UI 만들기
    • 04 회원 정보 저장하기
    • 05 세션 스토어에 저장하기
    • 06 로그인 기능 구현
    • 07 글 쓰기에 접근 제어 적용하기
    • 08 글 목록에 lowdb 적용하기
    • 09 글 수정에 접근 제어 적용하기
    • 10 글 삭제에 접근 제어 적용하기
    • 11 비밀번호 저장하기
    • 12 수업을 마치며
    •  
  • ▣ 8장: 구글 로그인 편
    • 01 수업 소개
    • 02 프로젝트 등록하기
    • 03 Passport.js 설정
    • 04 리소스 오너 인증 절차
    • 05 ID 획득 절차
    • 06 사용자 추가
    • 07 수업을 마치며
    •  
  • ▣ 9장: 페이스북 로그인 편
    • 01 수업 소개
    • 02 프로젝트 등록하기
    • 03 비밀 정보 관리하기
    • 04 리소스 오너 인증 절차
    • 05 ID 획득 절차
    • 06 이메일 scope
    • 07 회원 생성하기
    • 08 회원 정보 관리하기
    • 09 수업을 마치며
  • 65쪽, 그림 9-4를 다음 그림으로 교체

    그림 9-4