博客 / 詳情

返回

當年很流行,現在已經淘汰的前端技術有哪些?

​  近幾年,前端技術真可謂是飛速發展,不斷有新的技術涌現,爆火的前端框架 Astro,前端運行時 Bun,構建工具 Vite 等都給前端提供了強大動力。當然,也有很多前端技術隨着技術的發展不再需要使用,有了更好的替代方案。本文就來盤點一下那些不再流行的前端技術,以及對應的現代化替代方案。

本文提到的技術不代表不能再使用了,其仍存在一些適用場景,並且很多遺留老項目可能是使用這些技術實現的,需要進行維護。只是在新項目技術選型時,應儘可能考慮使用更為現代化的前端技術。

jQuery

jQuery 仍然是一個很流行的 JavaScript 庫,其生態系統中有超百萬個插件。但這是一個技術上的歷史遺留問題,並不是真的很流行,只是很多老網站仍然使用。根據 BuiltWith 的數據,排名前 100 萬的網站中有 78% 仍以某種方式使用 jQuery,很大一部分原因是 WordPress 使用了 jQuery,而很多網站都是使用 WordPress 創建的。

雖然 jQuery 依然被廣泛使用,但它已經不再是前端開發中的必須技術。現代前端框架已經內置了許多 jQuery 的功能,並且具有更好的性能和更少的代碼。

如果要開發新的前端應用,可以選擇當下流行的前端框架,如 Vue、React、Nuxt.js、Next.js 等。

React 類組件

最開始,React 中的組件都是類組件,需要結合生命週期來編寫,寫起來很麻煩。直到 v16.8 版本引入了 Hooks,得以讓我們更方便的使用函數組件,函數組件的代碼也更加清晰易懂。

圖片

因此,理解類組件是如何工作的以及生命週期方法仍然是很好的。但如果正在編寫新的 React 組件,建議使用帶有 React Hook 的函數組件。

Bootstrap

Bootstrap 是一個流行的 CSS 框架,它提供了預定義的CSS樣式、網格系統、JavaScript插件以及許多可重用的組件,如導航欄、按鈕、表單等。在七八年前,很多網站都使用 Bootstrap 來編寫,當時他們聲稱自己是“世界上最先進的響應式前端框架”。但是,現在來看,Bootstrap 的樣式並不是很美觀,還存在包體積大,難以自定義,實現落後,開發體驗不好等問題。

如今,有很多更優秀的替代方案可以選擇,比如:

UI 組件庫:Ant Design、Element UI、Arco Design;
CSS-in-JS:Styl-Components、Emotion;
功能類優先框架:Tailwind CSS、UnoCSS。

Python Django

Django 是 Python 語言的一種 Web 開發框架,曾被廣泛用於創建動態網站,但由於現代前端技術如 React、Angular 和 Vue 的興起,Django 已經不再是前端開發中的必須技術。Django 相對於現代前端框架來説,生態系統不完善,開發難度更大,並且不符合現代開發的前後端分離的理念。可以選用現在更為流行的前端框架,比如 React、Vue等。

AngularJS

AngularJS 由 Google 於 2010 年發佈,當時最著名的 JavaScript 庫是 jQuery。AngularJS(也稱為 Angular 1)不僅僅是一個庫,它是一個將 MVVM 概念帶入前端開發世界的完整框架。

2016 年,我們今天所熟知的 Angular 發佈了。注意,不要把 AngularJS 和 Angular 混淆了。AngularJS 從版本 2 開始就被 Angular 取代了,目前已經不再被 Google 官方支持和維護。

圖片

Angular 是一個用 TypeScript 編寫的現代化前端框架,是對 AngularJS 的改進和升級。它採用了組件化編程範式、模塊化體系結構,並提供了更好的性能、可擴展性和可測試性。Angular 又被稱為 "Angular 2+" 或 "Angular Next"。

對於新的項目,可以選擇使用 Angular 來開發,但是更推薦使用更受歡迎的 Vue 和 React 來開發,因為在國內這兩個框架使用的更多,生態更加完善,社區比較活躍,這也意味着遇到問題時更容易解決。

Ajax

Ajax 在前端開發中曾經被廣泛使用,但現在已經成為基本技術,不再是獨立的技術。Ajax 只有在前端面試中可能會被問到,很少會在實際的項目中需要編寫 Ajax。Ajax 的功能簡單,使用起來有很多侷限性,推薦使用功能更全面的第三方數據請求庫來處理數據請求,比如 Axios,它們的功能更加全面,使用起來也更方便,或者更現代化的前端請求 API:fetch。

Grunt、Gulp

Grunt 和 Gulp 都是前端自動化構建工具,它們可以幫助開發者自動化地執行文件編譯、壓縮、合併等任務:

Grunt 是一個基於配置的前端自動化工具,開發者需要通過編寫詳細的配置文件(Gruntfile.js)來描述任務的執行過程。Grunt 的生態系統中有大量的插件,覆蓋了幾乎所有前端開發中可能用到的任務,這讓開發者可以快速找到適合自己的插件並加以利用。
Gulp 是基於流式處理的前端自動化構建工具,它的核心理念是使用流來處理文件。在任務執行過程中,文件以流的形式在任務之間傳遞,這種方式使得 Gulp 的構建過程更加高效,並且能夠減少磁盤的讀寫操作。

雖然這兩個工具都很強大,目前還有一些使用場景。但是隨着前端的快速發展,出現了很多更為現代化工具,比如 Webpack、Vite 等,這些工具使用更簡單,效率更高,推薦使用這些現代化的構建工具。

雪碧圖

CSS雪碧圖是一種將多個小圖標或圖片合併成一張大圖的技術。通過將多個圖標或圖片合併成一張大圖,然後使用CSS的背景定位來控制顯示不同部分的圖像,從而減少了頁面加載的請求次數,提高網頁性能。

但是隨着前端技術的快速發展,出現了更多實用的技術,比如 SVG、iconfont,這些技術提供了更多靈活性和便利性,很多情況下可以取代雪碧圖。HTTP 2 的出現使得一次可以請求多個文件,雪碧圖存在的意義就不大了。並且,由於雪碧圖使用複雜,不易維護,一張圖崩了整個網頁的圖標就都崩了,圖標位置確定後就不好再修改等問題,不再需要雪碧圖這種形式。

IE兼容技術

2022 年 6 月 16 日,IE 瀏覽器正式退役,之後將由 Edge 瀏覽器接棒繼續提供服務。許多網站和程序要求兼容 IE,IE6 對 W3C 標準支持不夠友好,這可能是很多前端開發的噩夢了,IE6 的普及導致之後的 20 年間,不斷有開發者因為適配需要適配 IE6 而焦頭爛額。

如今,IE 瀏覽器,由現代瀏覽器 Edge 繼續提供服務,Edge 緊跟最近的技術,快速更新和維護。開發者也不再需要學習那些令人頭疼的兼容 IE 的技術了,喜大普奔!

圖片

最後,介紹一款軟件開發神器

JNPF開發平台,很多人都用過它,它是功能的集大成者,任何信息化系統都可以基於它開發出來。原理是將開發過程中某些重複出現的場景、流程,具象化成一個個組件、api、數據庫接口,避免了重複造輪子。因而極大的提高了程序員的生產效率。

官網:https://www.jnpfsoft.com,如果你有閒暇時間,可以做個知識拓展。

這是一個基於Java Boot/.Net Core構建的簡單、跨平台快速開發框架,採用業內領先的SpringBoot微服務架構、支持SpringCloud模式。前後端封裝了上千個常用類,方便擴展;採用微服務、前後端分離架構,集成了代碼生成器,支持前後端業務代碼生成,滿足快速開發;框架集成了表單、報表、圖表、大屏等各種常用的Demo方便直接使用;後端框架支持Vue2、Vue3,平台即可私有化部署,也支持K8S部署。

為了支撐更高技術要求的應用開發,從數據庫建模、Web API構建到頁面設計,與傳統軟件開發幾乎沒有差異,只是通過低代碼可視化模式,減少了構建“增刪改查”功能的重複勞動。

圖片

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.