React component 개념

강정우·2022년 12월 26일
0

react.js

목록 보기
2/45
post-thumbnail

component란?

  • 스타일을 만드는 Html 코드와 CSS코드와 어떠한 로직을 위한 JS의 결합이다.
  • 우리는 이미 HTML, CSS, JS로 컴포넌트들을 만들 수 있다. 그런데 왜 리액트를 사용할까?
    바로 조금 더 간단히 사용자 인터페이스를 구축할 수 있기 때문이다.
    또한 컴포넌트를 또 만들필요가 없다. 왜냐하면 재사용이 가능하기 때문이다.

    리액트에서 컴포넌트는 JS 함수이다!!!

component 구성

  • Html + CSS + JS = 1개의 component를 만들고 물론 CSS도 중요하지만 이중 가장 덜 중요한게 CSS이다.

왜 리액트는 컴포넌트의 전부라고 하는가?

  • 왜냐하면 react는 이 component들을 재사용할 수 있게 해주고 우려사항들을 분리할 수 있도록 해주기 때문이다.

1.재사용

  • 코딩은 같은 코드를 또 쓰는 것을 극도로 꺼려한다. 그렇기에 반복문이 있고 객체가 있어 미리 만들어 둔 것을 가져다 쓰는 것이다. react는 바로 web상에서 compent들을 반복할 필요가 없게끔 해준다.
  • 또한 코드베이스를 작고 관리 가능한 단위로 유지할 수 있게 해준다.

2.Seperation

  • 한 페이지에 너무 많은 코드가 있지 않도록 해준다.
    그리하여 한 페이지에 한 구체적인 로직만이 존재하게 해준다.

Delarative Approach

  • 항상 원하는 최종상태 또는 다양한 상황에 따라 다른 목표 상태를 정의하는 것이 아주 중요하다.
  • 즉, JS와 다르게 구체적인 concrete 코드로 DOM tree를 만들필요가 없고
    컴포넌트로 작업할 때에는 최종상태와 어떤 상황에서 어떤 상태가 사용되어야하는지 정의하면 된다.

종류

  • Smart | 상태유지 컴포넌트 : State를 갖는 컴포넌트
  • dumb | 프리젠테이셔널 컴포넌트 : data를 출력하기위한 컴포넌트
  • 통상 여러분은 무상태컴포넌트 > 상태유지 컴포넌트 일것이다.

그럼 한 컴포넌트 당 하나의 파일을 만들면 결국 리액트 프로젝트에서 수십, 수백개의 파일을 갖게되는데
그게 정상이냐?
-네

profile
智(지)! 德(덕)! 體(체)!

0개의 댓글