Angular與React、Vue.js的對比

2020-07-16 10:05:19
在當前的主流 Web 前端框架中,Angular、React、Vue.js 是備受矚目的3個框架,它們都是元件化開發框架。

從市場佔有率來看

Angular 與 React 的歷史更長,而 Vue.js 是後起之秀,所以 Angular 與 React 都比 Vue.js 的市場佔有率更高。

但需要注意的是,Vue.js 的使用者增長速度很快,有迎頭趕上之勢。

從支援度來看

Angular 與 React 的背後是大名鼎鼎的 Google 公司和 Facebook 公司,而 Vue.js 屬於個人專案。所以,無論是開發團隊還是技術社群,Angular 與 React 都更有優勢。

使用 Vue.js 的風險相對較高,畢竟這類專案在很大程度上依賴於維護者是否能夠繼續維護下去。好在目前大型網際網路公司都在與 Vue.js 展開合作,在一定程度上會讓 Vue.js 走得更遠。

從開發體驗來看

Vue.js 應用由 JavaScript 語言編寫,主要用於開發漸進式的 Web 應用程式,使用者使用起來會比較簡單,易於入門,請猛擊《Vue.js是什麼》了解更多內容。

以下是一個 Vue.js 應用範例:
<div id="app">
    {{ message }}
</div>

var app = new Vue({
    e1: '#app',
    data: {
        message: 'Hello Vue!'
    }
})

React 應用同樣由 JavaScript 語言編寫,採用元件化的方式來開發可重用的使用者 UI。React 的 HTML 元素是嵌在 JavaScript 程式碼中的,在一定程度上有助於聚焦關注點,但不是所有的開發者都能接受這種 JavaScript 與 HTML“混雜”的方式。

以下是一個 React 應用範例:
class HelloMessage extends React.Component {
    render() {
        return (
            <div>
                Hello {this.props.name}
            </div>
        );
    }
}

ReactDOM.render(
    <HelloMessage name="Taylor" />,
    mountNode
);

Angular 有著良好的模板與指令碼相分離的程式碼組織方式,以便大型系統可以方便地管理和維護。Angular 完全基於新的 TypeScript 語言來開發,擁有更強的型別體系,使得程式碼更加健壯,也有利於後端開發人員掌握。

Angular、React、Vue.js三者怎麼選

綜上所知,Angular、React、Vue.js 都是非常優秀的框架,有著不同的受眾,選擇什麼樣的框架要根據實際專案來選擇。

總的來說:
  • 入門難度順序是 Vue.js<React<Angular。
  • 功能強大程度是 Vue.js<React<Angular。

建議如下:
  • 如果你只是想快速實現一個小型專案,那麼選擇 Vue.js 無疑是最為經濟的。
  • 如果你想要建設大型的應用,或者考慮長期進行維護,那麼建議選擇 Angular。Angular 可以讓你從一開始就採用規範的方式來開發,並且降低了出錯的可能性。

提示:無論是可讀性還是可維護性,Angular 在大型專案中都是首選。