일하다보니 궁금해진 몇가지 개념정리

나쿠크·2024년 1월 7일
0

메서드에 대해 정리하기( 쿼리스트링, 바디)

HTTP에는 여러가지 메서드가 있다. 클라이언트가 서버에 요청을 전송할 때 사용된다.

  • GET : 조회
    • 주로 데이터를 요청할 때 사용되며 쿼리스트링으로 보냅니다.
  • POST : 생성하거나 수정
    • 요청의 본문 (body)에 데이터를 담아 전송합니다.
  • PUT : 업데이트
    • 전체 리소스를 업데이트하기 위한 데이터를 전송
    • 요청의 본문 (body)에 데이터를 담아 전송합니다.
  • PATCH: 리소스의 부분적인 업데이트
  • DELETE: 삭제

mutation, query에 대해 정리하기

  • query

    • 목적: 데이터를 읽기 위해 사용됩니다.
    • HTTP 메서드: 주로 GET 메서드를 사용하며, 데이터를 가져올 때 사용됩니다.
    • 특징:
      • 클라이언트는 필요한 데이터의 구조를 지정하여 서버로부터 해당 데이터만을 요청할 수 있습니다.
      • 여러 리소스에서 필요한 정보를 한 번에 요청할 수 있습니다.
      • 읽기 전용 작업에 사용됩니다.
  • Mutation:

    • 목적: 데이터를 변경하기 위해 사용됩니다.
    • HTTP 메서드: 주로 POST 메서드를 사용하며, 서버에 데이터를 생성하거나 수정할 때 사용됩니다.
    • 특징:
      • 클라이언트가 서버에게 데이터를 변경하도록 요청할 때 사용됩니다.
      • 서버에 의해 수행되는 작업은 주로 데이터의 생성, 수정, 삭제 등이 포함됩니다.
      • 읽기와 쓰기 작업을 통합할 수 있습니다.

컴포넌트 분리를 어떤 기준으로 하면 좋은가?

프로젝트를 진행하면서 여러번의 회의를 하며 모두가 함께 고민했던 주제이기도 했다. 여러명이 함께 페이지를 나눠 작업하는 프로젝트 일 수록 컴포넌트 분리에 대한 기준은 명확해야한다. 내가 생각해본 컴포넌트 분리 기준에 대해 정리해보겠다.

  1. 기능
    가장 기본적으로 '컴포넌트 분리'라고 하면 떠오르는 기준이 기능적 분리이다. 페이지를 제작하기 전에 페이지 디자인(피그마)을 보면 가장 먼저 하는 일이 아마도 어떤 기능들이 있는지, 몇개의 기능이 있는 페이지 인지일 만큼 기능은 그 작업의 메인요소라고 할 수 있다. 따라서 컴포넌트 역시 특정 기능 또는 역할을 담당하도록 분리하면 나중에 있을 유지보수나 수정을 할 때에도 편리하게 작업 할 수 있을 것이다. 또한, 비슷한 기능을 가진 코드를 하나의 컴포넌트로 묶어 모듈화한다면 재사용성을 높일 수 있다.

  2. 모듈화
    기능에서도 잠깐 언급된 모듈화란 코드를 재사용 가능한 작은 모듈로 컴포넌트를 분리하여 재사용과 유지보수를 쉽게 만드는 것이다. 모듈 간의 의존성을 최소화하고, 각 모듈이 독립적으로 테스트 가능하도록 설계한다면 사이드 이펙트를 줄일 수 있다.

  3. 변경
    동일한 기능을 하거나 동일한 이유로 변경될 가능성이 있는 코드를 동일한 컴포넌트로 묶는다. 예를 들어, 동일한 로직이 여러 부분에서 사용된다면, 해당 로직을 하나의 컴포넌트로 추출해 사용 할 수 있다.

컴포넌트의 분리는 프로젝트의 특성에 따라 기준을 정해 사용할 수 있으며 주요 목표는 유지보수성, 재사용성이라는 생각이 든다.

0개의 댓글