김갱환
맨땅에 코딩
김갱환
전체 방문자
오늘
어제
  • 분류 전체보기 (239)
    • ⁂ 맨땅에 코딩 (11)
      • : Story (3)
      • : MiniProject 'MyWeb' (1)
      • : Final Project (5)
      • : Josa-Moa 한국어 조사 처리 프로젝트 (1)
    • —————Frontend——————————————.. (0)
    • ⁂ HTML (10)
      • : 기본 익히기 (10)
    • ⁂ CSS (15)
      • : 기본 익히기 (15)
    • ⁂ Java Script (32)
      • : 기본 익히기 (28)
      • : 자바스크립트 라이브러리 (1)
      • : 연습 문제 (3)
    • ⁂ jQuery (11)
      • : 기본 익히기 (11)
    • ⁂ Bootstrap (3)
      • : 기본 익히기 (3)
    • ⁂ TailWind CSS (1)
    • ⁂ AJAX (5)
      • : 기본 익히기 (5)
    • ⁂ Vue.js (3)
      • : 기본 익히기 (3)
    • —————DB : Data Base————————.. (0)
    • ⁂ Oracle DB (27)
      • : 기본 익히기 (24)
      • : 연습 문제 (3)
    • ⁂ MyBatis Framework (15)
      • : 기본 익히기 (15)
    • —————Backend———————————————.. (0)
    • ⁂ Java (62)
      • : 기본 익히기 (42)
      • : JDBC - Java DataBase Conn.. (4)
      • : Crawling (2)
      • : 독학으로 공부하기(과거) (11)
      • : 연습문제 (3)
    • ——————Web————————————————— (0)
    • ⁂ JSP (28)
      • : 기본 익히기 (28)
    • ⁂ Spring FrameWork (15)
      • : Legacy Project (1)
      • : 기본 익히기(Boot 기반) (14)
    • ——————————————————————— (0)
    • ⁂ Error Note (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 코딩 #코딩공부 #상수 #리터럴 #형변환 #개발자 #자바 #자바공부 #자바독학
  • http에러메세지
  • 개발자
  • 자바
  • 연산자 #기본연산자 #코딩 #자바 #독학 #자바공부 #자바연산자
  • httperror
  • 코딩공부 #코딩 #자바 #자바독학 #자바공부 #개발자 #프론트앤드 #백앤드 #풀스택
  • 비트연산자 #코딩공부 #자바공부 #코딩 #자바 #프로그래밍 #개발자
  • 코딩공부
  • web.xml수정
  • 프론트앤드
  • 객체지향프로그래밍
  • ErrorPage
  • HTML공부
  • 코딩공부 #자바공부
  • 코딩 #코딩공부 #프론트앤드 #백앤드 #풀스택개발자
  • 자바공부
  • 풀스택
  • 코딩
  • 백앤드

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
김갱환

맨땅에 코딩

⁂ Vue.js/: 기본 익히기

[VUE.JS] 01 SPA와 REST API

2022. 12. 28. 11:19

 VUE.JS를 이해하기 위해선 먼저 SPA와 REST API에 대한 이해가 선행되어야 한다.

 그래서 한번 알아보자!!

 

1. SPA(Single Page Application)

 SPA란 단일 페이지 어플리케이션를 뜻하며 하나의 페이지 안에서 변화가 필요한 영역 부분만 새로고침(동적) 하는 형태를 말한다.
 SPA는 적은 트래픽 양으로 서버를 움직일 수 있다는 장점이 있지만 최초의 페이지 로딩시 모든 JS+CSS를 가져와야 해서 초기 로딩 속도가 느리다는 특징이 있다.

 이 단일 페이지는 다양한 컴포넌트들로 구성이 되어있다.

1) 컴포넌트(Component)
 컴포넌트는 웹을 구성하는 로고, 메뉴바, 버튼, 모달창 등 웹페이지 내의 다양한 UI 요소를 뜻하며 재사용 가능하도록 구조화 한 것이다.

2) 웹프론트엔드 프레임워크
 이렇게 컴포넌트들을 생성해주고 다루는 것에 있어서 컴포넌트(Component)기반의 SPA(Single Page Application)를 구축할 수 있게 해주는 프레임워크들이 있다.

 가장 크게 알려진 것이 바로 많이 들어본 Anglar, React, 그리고 지금 배워보려고 하는 Vue이다.

 

 이런 프레임 워크를 사용하면 모바일 앱을 사용하는 것과 같은 성능을 구현할 수 있다.

 또한 이 프레임 워크들은 자바스크립트 라이브러리이기 때문에 자바스크립트에 대한 기본적인 이해가 없이는 절대 다룰 수 없으며 한 페이지에서 모든 요소를 불러와서 동작시킨다(페이지 이동하지 않는다).

3) 라우팅
 라우팅이란 웹페이지간에 이동하는 방식을 뜻하며 SPA에서는 미리 해당하는 모든 컴포넌트를 받아놓고, 라우팅을 이용해서 그 부분만 갱신하는 하는 방식으로 페이지를 표현한다.
 라우팅을 이용해서 화면 전환을 함(React, Vue, Angular)

 

 

2. REST API (Representational safe transfer)


   ※ 유튜브 참조 동영상 : 얄코 https://www.youtube.com/watch?v=iOueE9AXDQQ
   ※ 참조 : https://poiemaweb.com/js-rest-api

 

REST API | PoiemaWeb

REST(Representational State Transfer)는 HTTP/1.0과 1.1의 스펙 작성에 참여하였고 아파치 HTTP 서버 프로젝트의 공동설립자인 로이 필딩 (Roy Fielding)의 2000년 논문에서 처음 소개되었다. 발표 당시의 웹이 HTTP

poiemaweb.com

 

 API(Application Programming Interface)는 소프트웨어가 다른 소프트웨어로부터 지정된 형식으로 요청, 명령을 받을 수 있는 수단을 뜻한다. 하나의 URI은 하나의 고유한 리소스를 대표할 수 있도록 URI를 설계해야 한다는 개념이며 정보를 주고 받을 때, 개발자들 사이에 널리 쓰이는(HTTP 요청을 보낼때, 어떤 URI에 어떤 메소드를 할지와 같은 형식을 정해두는) 개념이다.

 그리고 REST API는 클라이언트와 서버간 통신 과정에 있어서(API) REST한 방식으로 데이터를 주고 받는다는 뜻이다.

 

 REST한 방식이 무엇일까?

 REST는 Representational State Transfer의 줄임말이다.

 즉 URL에 정보의 자원 내용을 꼭 표현해야하며 자원에 대한 행위(GET, POST 등등)를 나타내야함을 뜻한다. 

 

 이런 API는 리소스 / 메소드 / 메세지로 분류되는데 아래 예시를 살펴보자


     .리소스 : 여행지, 카페, 유저, 드라마
     .메소드 : 여행지를 등록하다 / 불러오다 / 수정하다 / 삭제하다
     .메세지 : 여행지 12번의 이름을 '용두암'으로 변경하다

   - 메세지는 JSON으로 구현이 되며 메소드는 HTTP프로토콜의 메소드로 한다.
     -----------------------------------
     메소드이름    의미
     -----------------------------------
     GET           얻어오기(SELECT)
     POST          입력(INSERT)
     PUT           수정(UPDATE)
     DELETE        삭제(DELETE)
     -----------------------------------

   - 예) 요청을 보내는 주소만으로도 대략 뭘 하는 요청인지 파악 가능함 (RESTful Web Service)
    --------------------------------------------------------------
        URL                          메소드    설명
    --------------------------------------------------------------
        http://localhost/cafes       GET       카페리스트 페이지
        http://localhost/cafes       POST      카페 입력
        http://localhost/cafes       PUT       없음
        http://localhost/cafes       DELETE    없음
        http://localhost/cafes/5     GET       5번 카페 상세페이지
        http://localhost/cafes/5     POST      없음
        http://localhost/cafes/5     PUT       수정
        http://localhost/cafes/5     DELETE    삭제
    --------------------------------------------------------------

 

 

 

 

 

 

저작자표시 비영리 동일조건

'⁂ Vue.js > : 기본 익히기' 카테고리의 다른 글

[Vue.js] 03 Vue 프로젝트를 생성해보자!  (0) 2022.12.28
[Vue.js] 02 Vue 기초 환경설정  (0) 2022.12.28
    '⁂ Vue.js/: 기본 익히기' 카테고리의 다른 글
    • [Vue.js] 03 Vue 프로젝트를 생성해보자!
    • [Vue.js] 02 Vue 기초 환경설정
    김갱환
    김갱환
    코딩의 코자도 모르는 이의 공부 기록장

    티스토리툴바