Hello Next js World

Web framework

  • 웹 프레임워크는 데이터베이스에 연결을 설정하고 데이터를 관리하거나, 세션을 맺고 유지하는 등의 동작을 정해진 방법과 추상화된 인터페이스로 제공
  • 프레임워크에서 표준으로 제시하는 방법을 이용하면 쉽고 빠르게 안정적인 애플리케이션을 구축

routing

  • 웹 어플리케이션에서 사용자 요청 (url)을 특정 페이지나 컴포넌트로 연결하는 프로세스.
  • 다른 페이지로 이동할 수 있도록 해주는 역할.
  • 진짜 주소와 그 주소를 연결해주는 그 무언가처럼 느껴지나 정확히 모르겠음
  1. URL과 Route :
  2. Router : url과 페이지(또는 컴포넌트)간의 매핑을 관리.
  3. 동적 라우팅 : url의 일부를 변수로 사용하여 라우트 패턴으로 여러 페이지를 처리하는 기술
  4. Redirection : 특정 urldㅔ서 다른 url로 사용자를 리디렉션하는 프로세스.

DOM vs. VDOM

화면을 그리는 걸 대충 DOM이라고 하는데, 매번 화면을 다시 그릴게 아니라 가상으로 하나 그림을 미리 그려놓고 (VDOM) 서버에서 뭔가 달라지면 다른 점만 찾아서 그 부분만 새로 고치는 방식.

component ?

=> react에서 나온 개념, react에서는 사용자 정의 태그를 만들수가 있다. 그걸 컴포넌트라고 하기로 함.(함수형과 클래스형이 있다.)

  • 컴포넌트는 데이터(props)를 입력받아 View(state) 상태에 따라 DOM Node를 출력하는 함수.

    • 컴포넌트 이름은 항상 대문자로 시작함 -> 국룰
  • 웹 페이지에서 컴포넌트는 화면을 이루는 작은 요소들

  • 재사용성을 높일 수 있음!!

    • prop : 부모 컴포넌트에서 자식 컴포넌트로 전달해주는 데이터를 Props
    • state
    • children
  • 자바스크립트에서는 함수를 변수처럼 이용할 수 있음

읽어도 읽어도 새로운 컴포넌트

랜더링

  • 서버 컴포넌트
    • 정적 랜더링
    • 다이나믹 랜더링
    • 스트리밍
  • 클라이언트 컴포넌트
  • 컴포넌트 패턴