RESTful API, Stream API

가오리·2022년 11월 18일
0

let me borrow your CS

목록 보기
16/25
post-thumbnail

RESTful API: REpresentational State Transfer

  • HTTP 통신에서 어떤 자원에 대한 CRUD 요청을 Resource와 Method로 표현하여 특정한 형태로 전달하는 방식
  • Resource(자원, URI), Method(요청 방식_GET, POST), Representation of Resource(자원의 형태_JSON, XML)로 구성된다.
  • REST API의 설계 규칙을 올바르게 지킨 시스템을 RESTful하다고 말할 수 있다.
  • REST API의 설계 규칙을 올바르게 지키지 못한 시스템은 REST API를 사용하였지만 RESTful 하지 못한 시스템이라고 할 수 있다.



Stream API

  • 컬렌셕 또는 배열 인스턴스에 저장된 데이터를 가지고 중간연산과 최종연산을 진행하기 좋은 구조로 배치시키는 복사본이라고 할 수 있다.
  • 특징
    1. 원본의 데이터를 변경하지 않는다.
      • 원본의 데이터를 조회하여 원본의 데이터가 아닌 별도의 요소들로 Stream을 생성한다.
      • 원본의 데이터로부터 읽기만 할 뿐이며 정렬이나 필터링 등의 작업은 별도의 Stream 요소들에서 처리가 된다.
    2. 일회용이다.
      • 일회용이기 때문에 한 번 사용이 긑나면 재사용이 불가능하다.
      • Stream이 또 필요한 경우 Stream을 다시 생성해줘야 한다.
    3. 내부 반복으로 작업을 처리한다.
      • 기존에는 반복문을 사용하기 위해 for, while 등의 문법을 사용해야 했다.
      • stream에서는 그러한 반복 문법을 메소드 내부에서 숨기고 있기 대문에 간결한 코드의 작성이 가능하다.
  • 연산 종류
    1. 생성하기
      • 객체를 생성하는 단계, 재사용이 불가능하기 때문에 닫히면 다시 생성해야 한다.
    2. 가공하기
      • 원본의 데이터를 별도의 데이터로 가공하기 위한 중간 연산
      • 연산 결과를 Stream으로 다시 반환하기 때문에 연속해서 중간 연산을 이어간다.
    3. 결과 만들기
      • 가공된 데이터로부터 원하는 결과를 만들기 위한 ㅎ최종 연산
      • stream의 요소들을 소모하면서 연산이 수행되기 때문에 1번만 처리 가능하다.
profile
가오리의 코딩일기

0개의 댓글