회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
회원가입을 하면 원하는 문장을
저장할 수 있어요!
다음
새로운 웹 개발 프로젝트를 시작할 때, 프런트엔드에서 어떤 프레임워크와 라이브러리를 선택하는지가 이제는 믿을 수 없이 중요해졌습니다. 자바스크립트(JavaScript)는 물론 웹 애플리케이션의 중추이기는 하지만, 대형 프로젝트에서 사용하기에 가장 좋은 프런트엔드 프레임워크가 어떤 것인지에 대해서는, 소프트웨어 개발자들조차도 쉽게 대답을 하지 못하고 있는 상황입니다.
만약, 여러분이 앵귤러(Angular), 리액트(React), 뷰(Vue) 사이에서 쉽게 판단을 내리지 못하겠다면, 이들 프레임워크에 대한 통계수치와 함께 2020년 현재의 상황을 먼저 알아보는 게 좋습니다. 이번 시간은 소프트웨어에 관심 있는 분들이 가장 많이 하는 질문들에 대해서, 가장 적절한 답변을 알려드리고자 합니다.
페이스북이 개발한 리액트는, 웹페이지에서 동적인 사용자 인터페이스(UI)를 생성하고, 운용하는데 사용되는 인기 있는 프레임워크입니다.
앵귤러는 구글이 만든 가장 강력하면서도 효과적인 오픈소스 자바스크립트 프레임워크이며, 싱글 페이지 어플리케이션(SPA)를 만드는데 사용됩니다.
뷰는 에반 유(Evan You)라는 사람이 대규모의 커뮤니티와 개발자들의 도움을 받아 완성했습니다. 개발자들로부터 대대적인 지원을 받아서 만들어졌기 때문에 뷰는 리액트와 앵귤러보다 윤리적인 프레임워크라고 해도 그다지 틀린 말은 아닙니다. 따라서 뷰는 비교적 짧은 시간 사이에 어떠한 하락세도 없이 높은 인기를 얻을 수 있었습니다.
NPM 트렌드
: 가장 많이 다운로드되면서 사랑을 받고 있는 것은 리액트이며, 그다음을 뷰가 뒤따르고 있습니다. NPM의 트렌드에 의하면, 가장 많이 다운로드 된 프레임워크는 리액트입니다.
Stack Overflow 트렌드
: 리액트가 두 번째 위치에 있는 앵귤러를 제치고 최고 자리를 차지하고 있습니다. 2020년 현재의 앵귤러, 리액트, 뷰의 인기를 비교하면서 스택오버플로우의 트렌드를 보면, 리액트가 가장 많은 인기를 얻고 있고, 그 다음을 앵귤러가 뒤따르고 있습니다. 뷰의 경우 지난 몇 년 동안 인기가 계속해서 오르고 있다는 사실도 알 수 있습니다.
Github 트렌드
: 깃허브의 저장소(Repository)에 관한 통계는 놀라우면서도 흥미로운 결과를 보여주고 있습니다. 포크(Fork)와 와치(Watch) 수에서는 리액트가 가장 앞서지만 별점에서는 뷰가 가장 높은 것으로 나타나고 있습니다.
개발 속도는 개발자가 이용할 수 있는 라이브러리의 규모에 따라서 결정됩니다. 그러므로, 리액트보다는 앵귤러를 이용할 때, 웹 애플리케이션을 더 쉽고 빠르게 개발할 수 있습니다. 반면에 규모의 확장 면에 있어서는, 앵귤러보다는 리액트의 아키텍처가 더 간단합니다.
앵귤러 (Angular)
앵귤러는 프로젝트 생성에서부터 코드 최적화 작업에 이르기까지 모든 작업에서 사용할 수 있는 폭넓은 프레임워크이기 때문에, 전체적인 개발 과정에 있어서는 가장 다루기 힘든 프레임워크라고 할 수 있습니다. 하지만 앵귤러는 선택할 수 있는 많은 기능들이 있기에, 개발자들은 어떠한 호스트(host)앱이라 하더라도 간단한 명령을 통해 완전히 최적화된 번들(bundle)앱을 만들 수 있습니다.
리액트 (React)
리액트에는 앵귤러나 뷰에서와 같은 도구들이 없지만 대신에 유연성을 제공하고 있습니다. 여러분이 원하는 어떠한 라이브러리라도 리액트에 맞춰 넣을 수 있는 것인데요. 크리에이트 리액트 앱(Create React App)이나 넥스트(Next.js)와 같은 명령줄 인터페이스(CLI) 도구들도 있생겨나고 있습니다.
뷰 (Vue)
앵귤러나 리액트와 비교해서 뷰는 프리코딩(pre-coding) 구조를 가지고 있어서, 그 성능을 양보하지 않고도 애플리케이션을 빠르게 개발할 수 있게 해줍니다. 그리고 명령이 쉽기 때문에, 개발과정에서 원하는 것을 정확하게 이용할 수 있습니다. 뷰를 사용하면 앱개발이 쉽고 빠릅니다. 따라서 스타트업에게 아주 좋다고 할 수 있습니다.
앵귤러는 개발도구에서부터 테스트 도구에 이르기까지 웹 어플리케이션 개발 과정에서 필요한 모든 것을 갖춘 풀 패키지입니다. 반면에 리액트는 개발을 위해 다른 라이브러리들의 지원이 필요한 유연한 프레임워크입니다. 뷰는 앵귤러와 리액트가 결합된 것으로 볼 수 있으며, 여기에 더해서 웹 어플리케이션 개발에 필요한 속도, 효율성, 심플함까지 갖췄습니다.
앵귤러를 선택해야 하는 경우!
-기능이 풍부하고 규모가 큰 애플리케이션을 개발할 때
-믿을 수 있고 확장 가능한 프레임워크가 필요할 때
-채팅 앱이나 메시징 앱과 같은 실시간 애플리케이션을 개발할 때
-장기프로젝트이며, 투자규모도 상당한 네이티브 앱이나 하이브리드 앱, 또는 웹앱을 개발할 때
-타입스크립트(TypeScript)로 코딩해야 할 때
-객체지향(Object-oriented)프로그래밍을 해야 할 때
리액트를 선택해야 하는 경우!
-빠른 일정 안에 엔터프라이즈 수준의 가벼우면서도 현대적인 애플리케이션을 개발해야 할 때
-웹사이트 개발 솔루션을 안전하게 보호할 수 있는 유연한 프레임워크가 필요할 때
-크로스 플랫폼(cross-platform) 애플리케이션이나 싱글 페이지 애플리케이션(SPA)을 개발할 때
-기존의 앱에서 기능성을 확장할 때
-강력한 커뮤니티 지원과 솔루션이 필요할 때
뷰를 선택해야 하는 경우!
-시장 진입 단계에서 필요한 프레임워크를 선택할 때
-작고 가벼운 애플리케이션을 개발할 때
-기존의 프로젝트에서 현대적이지만 제한된 리소스를 가진 프레임워크로 마이그레이션을 해야할 때
-기업이 아니라 사용자 커뮤니티의 지원을 받는 프레임워크를 원할 때
> 이 글은 'Angular vs React vs Vue: Which Is the Best Choice for 2020?'을 각색하여 작성되었습니다.