개발/항해99

항해99-3주차 기록(주특기 입문-React)

blueLabel* 2022. 7. 7. 19:38

 

#React

  • Dom??

텍스트 파일의 웹 문서를 브라우저에 렌더링하기 위해서는 브라우저가 이해할 수 있는 구조로 메모리에 올려야 함.

이를 가능하게 하는 것이 DOM. 웹페이지를 이루는 요소들을 자바스크립트가 이용할 수 있게 브라우저 내에서 

트리구조로 만든 객체 모델. (html 등의 문서와 J.S의 연결)

 

  • VirtualDOM??

모든 컴포넌트를 조작하는 것에 있어서 가상돔이 없이 실제돔을 사용한다면, 매번 접근 메서드를 하나하나 찾아야하고,

그 변화에 따라 레이아웃이 변화하고, 웹페이지를 다시 렌더링해서 보여줘야하는 문제가 생긴다. 만약 필요한 작업이

하나뿐이라면 크게 문제가 없을 수 있지만, 여러가지 동작을 하면서 이는 메모리 누수와 속도의 문제가 생길 수 있다.

실제 DOM에 직접 접근해 조작하는 대신, 추상화 시킨 자바스크립트 객체를 이용해서 사용하는 것.

 

 

변경사항이 있으면 가상DOM에 리렌더링 -> 가상DOM끼리 비교 ->바뀐 부분만 실제 DOM 적용


  • 서버리스란?

마치 서버가 없는것처럼 (서버를 관리할 필요 없이) 애플리케이션을 실행할 수 있는 환경.

클라우드 제공업체가 서버인프라에 대한 유지 관리, 스케일링 등의 일상적인 작업을 처리하고, 개발자는 배포를 위해 코드를 컨테이너에 패키징하여 사용하면 된다. 서버리스 애플리케이션은 배포 후에 필요에 따라 자동으로 스케일 업 되거나 다운된다.

 

서비스가 항상 구동되어 있는 상태가 아니라, 요청이 있을때만 실행 되다가 더 필요하지 않은 시점에 종료된다는 점 때문에, 요건에 맞춰서 구동된 시간과 처리된 데이터만큼만 비용을 지급할 수 있다. 클라우드 제공업체가 클라우드 인프라와 애플리케이션의 스케일링을 모두 관리한다는 점에서 클라우드 컴퓨팅 모델과 차이를 보인다.

 

 

장점

 

-항상 자체 서버를 실행하고 관리하는 대신 필요한 만큼 클라우드 기반 컴퓨팅 시간에 대해 비용을 지불하기 때문에 운용비용이 낮다.

-서버 관리 등과 같은 일상 업무의 부담을 줄여, 개발자가 애플리케이션에 더 많은 시간을 할애할 수 있게한다.

 

단점

 

-클라우드 제공업체의 제한으로 인한, 사용자 시스템의 유연성과 커스터마이징 수준에 영향을 준다.

-제공업체를 변경한다면 새로운 사양에 맞추기 위해 시스템을 업그레이드하는 비용이 발생할 수 있다.