2024年 Web 開發趨勢:回歸簡潔
我們關注2024年的五個Web開發趨勢,包括前端開發者回歸簡潔性、AI代碼工具、Web組件等等。
譯自Web Development Trends in 2024: A Shift Back to Simplicity,作者 Richard MacManus。
過去一年,Web開發的特點是回歸構建網站或Web應用程序的更簡單方法。部分原因是對JavaScript框架(尤其是基于React的框架)日益增長的復雜性的反應。像Astro和Eleventy這樣的更簡單的選項在2024年變得越來越流行,導致一些人(好吧,至少是我)認為我們正在接近后React時代。
當然,并非每個Web開發者都愿意放棄React——而2024年關于Web組件的大討論充分證明了這一點。
簡化開發也是AI集成到開發工具的副產品,這使得即使是經驗不足的開發者也能輕松應對復雜的編碼問題。也就是說,AI也有其自身的問題——特別是Web發布者和運營商在今年遭受了AI接管的困擾。
因此,讓我們深入探討一下2024年的五個Web開發趨勢。
1. 更簡潔的Web框架興起
1月份,Netlify首席執行官在TheJam.dev大會上告訴與會者,Jamstack需要減少復雜性,再次變得簡單。他表示,Jamstack工具和流程在過去幾年變得更加復雜。他指出,當混合架構開始滲透到Jamstack時,這一點變得顯而易見——當存在客戶端和服務器端編程的混合時。
談到了“走向簡潔的兩條路徑”。第一條路徑是他所謂的“預烘焙Jamstack”,這意味著使用構建工具將內容發送到CDN(內容分發網絡)。這基本上是Jamstack最初的愿景,在混合方法接管之前。根據的說法,第二條走向簡潔的路徑是“擁抱服務器端渲染”(SSR)。他推薦Astro和Remix作為簡化開發的兩個優秀框架。
Astro無疑是今年最流行的Web框架之一。其最突出的特點之一是它不像其他流行框架那樣使用大量的JavaScript。它具有“默認情況下零JS”——這意味著Astro組件不會在客戶端渲染,而是“在構建時或按需使用服務器端渲染(SSR)渲染到HTML”。
Astro提供了一種“回歸基礎”的Web開發方法,讓人想起早期的Web 2.0框架,如Ruby on Rails和Django,它們也是服務器端渲染的。
需要注意的是,Astro最初是一個靜態網站生成器(SSG),但現在已經超越了這一點。但是對于大多數網站或Web應用程序來說,一個SSG——例如Eleventy或Nue——已經足夠了。
還值得一提的是Vue作為另一個不錯的選擇。與Astro一樣,它并沒有試圖將所有內容都塞進JavaScript——盡管如果您需要,高級JavaScript也是可用的。這種簡單優先的Web開發方法正在獲得越來越多的關注,我預計這種趨勢將在2025年繼續下去。
2. 后React時代
2024年恰逢React十周年。在7月份的一篇文章中,我回顧了React的傳承及其在Web開發領域中的現狀。我得出結論,盡管它有巧妙的創新——特別是它的“虛擬DOM”方法——但它已經變得過于復雜。
我使用術語“后React”多少有些戲謔的意味,因為React——以及Next.js等相關框架——仍然非常流行。但是,有一種感覺是,開發人員現在可以選擇可行的替代方法。上面提到的Astro和Svelte都沒有使用虛擬DOM方法,因此開發人員現在可以選擇不依賴React的Web框架(盡管Astro仍然可以選擇React)。
此外,較新的React特性,例如React服務器組件,已在Web社區中引發大量爭論。Angular框架的創建者之一,現任Cloudflare工程高級總監的Igor Minar甚至斷言:“對我來說很清楚的一點是,React服務器組件將會摧毀React。”
3. Web組件的愛與恨
一些工程團隊正在放棄React,并開始使用更多原生Web方法。“HTML優先”方法就是Microsoft Edge瀏覽器團隊正在采用的方法,微軟工程師Alex Russell將其描述為“現代Web組件+HTML優先架構”。
五月底,微軟發布了WebUI 2.0,“這是一種全新的標記優先架構,它最大限度地減少了代碼包的大小以及UI初始化路徑中運行的JavaScript代碼量。”
更少的JavaScript意味著更小的占用空間,這轉化為用戶更快的Web體驗。其他規模較小的開發團隊也采用了類似的方法。六月,我采訪了一家名為Eukleia的瑞士IT公司的高級開發人員,該公司正在構建一個名為Mindsapp的定制開發工具。該公司通過從React遷移到現代Web技術(包括Web組件)簡化了其應用程序,從而大大縮短了用戶的加載時間。
這一切都很好,但是許多開發人員不喜歡使用Web組件。十月,SolidJS JavaScript框架的創建者Ryan Carniato發表了一篇博文,標題具有挑釁性,《Web組件并非未來》。基本上,他的論點是,像SolidJS這樣的框架在某些情況下能夠比Web組件做得更多,并且更容易實現。他將Web組件斥為“徹頭徹尾的妥協”。
針對Carniato的觀點,Shoelace的創建者Cory LaViska認為Web組件提供了穩定性和互操作性。LaViska還指出,Web組件并非執行框架組件的所有功能,“因為它們是互操作元素的較低級別實現”。
像往常一樣,社交媒體戰場上并沒有改變任何人的想法。
4. 無處不在的AI
如果不提及生成式AI幾乎壓倒一切的影響,那么對2024年科技的回顧就不完整。
今年對于開發人員來說,AI被集成到開發人員的核心工具(IDE)中,而創建“AI代理”的新技術則出現在LangChain和LlamaIndex等輔助工具中。可用的大型語言模型類型也變得更加多樣化,小型模型和本地開發能力尤其受到開發人員的關注。
AI輔助編碼今年對開發人員的影響最大。“這是我在軟件工程整個職業生涯中看到發展速度最快的領域之一,”SingleStore的Madhukar Kumar最近告訴The New Stack。“我們看到新的工具、IDE和全棧開發平臺取代了幾個月前很流行的IDE(例如GitHub Copilot)。對于開發人員來說,最大的挑戰將是如何跟上這些變化,并不斷調整他們的工作流程以適應他們的經驗水平和他們正在構建的內容,而不會產生‘新IDE疲勞癥’。”
請參閱我上周的年度總結,以更深入地了解2024年的AI工程趨勢。
5. Web發布的虛無主義
對于Web發布者和運營商來說,這是特別壓力重重的一年,他們不僅要應對AI的侵蝕,還要應對全球最大的開源Web發布社區的一場重大風波。當WordPress的共同創建者Matt Mullenweg和WordPress供應商WP Engine發生法律糾紛時,這促使許多運營商尋找WordPress的替代方案。
到年底,谷歌AI概述(AIO)——谷歌的AI引擎試圖在搜索結果頁面頂部回答您的查詢——已在100多個國家/地區上線。然而,評估其影響仍然很困難。您的網站在AIO中出現的頻率如何?您的引用鏈接在AIO中被點擊了多少次?SEO公司BrightEdge的Jim Yu告訴我們[AIO就像“增強版的零點擊快速答案”]——這意味著人們并不一定會點擊引用鏈接。他說,AIO可能會降低點擊率,因為它的AI摘要旨在直接回答查詢。
Drupal創建者Dries Buytaert在另一個TNS采訪中[為出版商提供了一些希望]。“你必須提供超越ChatGPT所能提供的價值,這樣人們仍然有動力訪問你的網站,”他在二月份說道。“那么你該如何做到呢?通過提供更好的內容——更好的內容可能是個性化內容,或者……也可能是更多內容放在……不一定是付費墻后面,而是門檻后面。你知道,也許你需要注冊才能獲得內容。”
結論
網絡開發中事情從來都不簡單,但至少已經開始擺脫React的復雜性。讓我們希望這種情況在2025年繼續下去。與此同時,人工智能的進步和網絡出版軟件持續的動蕩,預示著新的一年對許多網絡從業者來說將是一個動蕩的開始。