개발 이야기/프론트엔드 개발자

VueJS, React 를 사용하면서.

석구석구 2019. 6. 15. 14:03

지극히 개인적으로 드는 생각을 남겨봅니다.

공통 장점

  • 프로젝트 전체를 관통하는 틀이 생긴다. 따라서 관리가 용이해 진다.

  • 컴포넌트 기반의 개발 패러다임. 화면 구성이나 기능을 컴포넌트 묶음으로 개발하니 재사용성이 좋고 분할 정복이 잘된다. 모델 기반으로 프론트 협업도 가능하다.

  • 효율이 좋다. 제이쿼리나 기타 라이브러리를 사용하면 데이터가 바뀌면 돔을 찾아서 업데이트하거나 통째로 다시 그렸는데, 업데이트는 프레임워크에 맡기고 모델구성과 비즈니스로직에 집중할 있게 된다. 반복 작업이 줄어든다.

  • 모델은 스토어, 뷰 / 로직은 컴포넌트단에서 관리하는 구조를 만들기 쉽다. 그리고 아주 자연스럽게 뷰 모델을쓰게 되니 전체 틀도 일정한 패턴에 맞게 쉽게 구조화 된다.

  • 쾌적한 성능.

  • 충분한 생태계

  • create-react-app, vue-cli 를 통한 빠른 스캐폴딩

뷰의 장점 :

  • 쉽고 편하다. 뷰 영역을 담당하는 컴포넌트의 템플릿은 마크업과 같다. 뷰 인스턴스 작성도  정돈된 레이어위에서 개발하는 느낌이다.

  • Vue 파일에 템플릿, 스타일 시트, 그리고 스크립트까지 하나로 세트로 관리된다.

  • 자동으로 관리되는 모델 바인딩

  • 데이터의 변이가 가능하고, 따라서 매직이 많다. (단점이 될 수도..)

  • 매직으로 양방향 바인딩을 제공한다.

  • 이벤트로 컴포넌트간 상하 체계가 자유롭다 (단점이 될 수도..)

리액트의 장점 :

  • 컴포넌트 작성부터 원한다면 뷰 영역까지 모두 JS로 작성할 수 있다. 

  • 자바스크립트 친화적이고 실체적이다.

  • 함수를 이용해 컴포넌트를 순식간에 쉽게 만들어 낼 수 있다. 물론 클래스로도 아주 간단하게 만들어 낼 수 있다.

  • 에러 코드가 아주 아주 친절하다.

  • 데이터 흐름과 관리에 대한 기본 콘셉트가 확실하다.

  • 페이스북에서 관리하니 빠르게 업데이트된다.

  • jsx 사용으로 (아름다운) 랜더 함수 작성 및 뷰 담당 컴포넌트(프레젠테이션) 작성

  • Typescript를 이용한 어메이징 자동완성.

'개발 이야기 > 프론트엔드 개발자' 카테고리의 다른 글

HTTP 2.0  (0) 2020.03.06
20분이면 충분한 셀레니움 UI 테스트.  (0) 2020.01.31
GET, POST, ...ETC 그리고 HTTP 응답  (0) 2019.06.12
Restful api  (0) 2019.06.12
4) 클라이언트와 서버의 연결  (0) 2016.09.08