Node.js (1)

송예원·2024년 9월 9일
0

node.js

목록 보기
1/6

https://www.youtube.com/watch?v=3RS_A87IAPA&list=PLuHgQVnccGMA9QQX5wqj6ThK7t2tsGxjm

  1. Node.js 소개
  • html을 이용해 웹을 만들 수 있게 되었지만, html의 한계에 부딪히게 됨 (코드를 하나하나 수정해야하거나, 일부 사용자만 컨텐츠 추가가 가능하거나...)
    => 귀찮고 반복되는 html코드 작성을 자동으로 생성하는 기술을 사용하고 싶어짐

  • 자바스크립트로 인해 웹은 사용자와 상호작용을 할 수 있게 됨
    이러한 자바스크립트를 이용해 웹이 아닌 컴퓨터를 제어하는 것= Node.js
    => 웹페이지 자동생성 가능
  1. Node.js의 목적
  • html의 수 많은 중복 코드를 한번에 수정할 수 있음
  • Node.js를 이용해 웹페이지를 순간순간 생성하며 자동화 가능
    => Node.js를 이용해서 웹사이트로 방문하는 사용자가 읽기, 쓰기, 수정, 삭제 작업을 모두 웹을 통해서 할 수 있게 됨

    = 이러한 기술은 웹사이트의 기능성을 크게 향상시킴
  1. Node.js로 웹서버 만들기
  • Node.js는 웹서버로 사용이 가능함
    • 웹서버가 있으면 웹브라우저의 주소를 요청했을 때 그 요청에 따른 정보를 찾아 응답해줌
      => 자바스크립트를 통해서 우리가 읽어들여야 될 파일을 만들게 됨

  • 노드 js는 데이터 생성에 따라 사용자에게 다른 데이터 전송이 가능
    ** node main.js ...= 파일열기

6.1.JavaScript 문법 - Number Data type

  • 기본 숫자를 적는것 만으로 number 의미

  • 기본 사칙연산 (+, -, *, /)
    => 자바스크립트가 제공하는 여러 number데이터 타입 처리 방법을 사용할 수 있음
console.log(1+2)
3

6.2.JavaScript 문법 - String

  • " "/ ' ': String타입 사용시 필요
  • +: 문자열 결합: 그대로 출력 ('1'+'1'= 11)
  • .length: 문자열 길이 측정 함수

7.1. JavaScript 문법 - 변수의 형식

** 변수의 형식을 한번 붙여 선언한 변수는 그 이후에 다시 형식을 붙이지 않아도 됨
  • var: 업데이트 가능한 변수의 형식
    ** 최근에는 여러 한계 (중복선언 가능, 선언 위치와 관계 없이 사용 가능 등 )로 인해 사용하지 않음
  • const: 상수, 값이 변하지 않음-> 이후 업데이트 불가능, 대부분 사용
  • let: 업데이트 가능한 변수의 형식-> 업데이트가 필요한 경우에만 사용

7.2.JavaScript 문법 - 변수의 활용

  • 변수의 사용 이유: 코드의 가독성을 높이고 중복된 데이터를 효율적으로 관리할 수 있음
  • 변수는 중복을 제거하는데 효과적!!

ex) - String형식과 변수 함께 사용하는 방법: +사용

string a= "Hello W";
string b= "rld";
console.log (a +0+ b);
Hello W0rld

8.Template Literal (Template String)

  • 템플릿 리터럴: 내장된 표현식을 허용하는 문자열 리터럴
    런타임 시점에 일반 자바스크립트 문자열로 처리됨
    = 백틱 사용 (`)

  • \n과같은 기능을 쉽게 사용하기 위해 만들어짐
    `, $, {} 사용으로 \n, +같은 기능 사용 가능
    => 표현식, 문자열 삽입, 변수 사용, 여러 줄 문자열 표현 등 다양한 기능 제공

9.URL의 이해

  • URL은 프로토콜, 호스트, 포트번호, 경리, 쿼리스트링 등으로 구성되어있음
    웹 어플리케이션 구현에 있어 중요한 기능 중 하나

ex) http://opentutorials.org:3000/main?id=HTML&page=12

  • http (ftp): 프로토콜/ 사용자가 서버에 접속할 때 어떤 방식으로 통신할 것인가에 대한 부분
  • opentutorials.org: 도메인 네임 (호스트)/ 특정한 인터넷에 연결되어있는 컴퓨터를 가리키는 주소
  • 3000: 포트번호/ 어떤 포트에 연결되어있는 서버와 통신할지 결정
  • main: 패스/ 컴퓨터 안에 있는 어떤 디렉토리의 어떤 파일인지 알려줌
  • id=HTML&page=12: 쿼리스트링/ 웹 서버에게 데이터를 전달해줌

=> 조작을 통해 다른 사이트 접속이 가능하게 하는 본인
값과 값 사이는 &, 값의 이름과 값은 =로 구분

10.URL을 통해서 입력된 값 사용하기

  • 쿼리스트링을 통해 동적 웹페이지를 만들 수 있음

11.App 제작 - 동적인 웹페이지 만들기

  • 긴 내용의 정적인 파일을 동적으로 제작 가능=> 코드의 간결화
    • 코드를 간결화할 때 변수를 사용하는 경우가 많은데, 변수는 핵심의미를 담고 중복되지 않는 것이 중요

  • 쿼리 스트링을 사용해서 값을 받아들이고 쿼리스트링의 입력에 따라 nodejs는 문자열을 바꿔서 출력
    • 이때 출력하는 문자열이 html코드라면 웹페이지는 html코드를 읽어서 그에 해당하는 웹페이지를 만들 것

12.Node.js의 파일 읽기 기능

  • CRUD: create, read, update, delete
    • create: 파일 생성
    • read: 파일 읽기
    • update: 파일 수정
    • delete: 파일 삭제
  • ex) 각 페이지가 전체 html 코드를 저장하는 대신 본문만으로 채워지는 파일 데이터를 저장. 이를 통해 효과적인 데이터 관리 가능.
  • fs모듈: file system
var fs = require('fs'); // 파일시스템 모듈인 fs불러옴
fs.readFile('sample.txt', 'utf8', function(err, data){
//readFile을 사용하여 sample.txt라는 파일을 읽음
파일 이름, 파일 인코딩 방식, 파일 읽기 완료 후 실행할 함수
  console.log(data); // 파일 내용 출력
});

**

  • 주석: //

  • 웹 어플리케이션: 스마트폰에서 사용하는 어플리케이션과 같이 여러 가지 기능을 가지고 동작하는 웹 페이지

0개의 댓글