成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

前端LSP真是越來越多了

開發 前端
LSP是編輯器和語言工具(例如linter、靜態類型檢查、代碼風格檢查)之間進行通信的標準協議。

[[416399]]

大家好,我是卡頌。

前端領域發展多年,不僅沒有式微,反而勢力逐漸擴大。

一個直觀的現象:市場上「前端」、「后端」崗位需求一直居高不下,與「前端」同樣偏「前」的原生開發(IOS、安卓)則逐漸式微。

雖然「前端」發展迅猛,但是太陽底下沒有新鮮事,web前端終將走過「原生應用程序」曾經走過的路。

如果以史為鑒,那么一個趨勢是不可阻擋的 —— 前端會越來越「左」。

本文內容參考Language Servers are the New Frameworks[1]以及Compilers are the New Frameworks[2]

什么是“左”?

IBM曾發明一個計算機術語Shift Left[3](左移)。

對開發者來說,「開發」這一行為可以分為不同階段:

Read(肉眼看到我們編寫的代碼出現在屏幕上時)

  • Save(保存代碼時)
  • Commit(提交代碼時)
  • Build(編譯代碼時)
  • Run(運行代碼時)
圖片

當開發者的注意力越向左,越能盡早發現bug(即「左移」)。舉兩個極端例子:

  • 對于Read,依賴于TS的靜態分析,在編寫代碼的同時就能知道類型推導相關的錯誤
  • 對于Run,某些bug可能要運行好幾天,用戶反饋過來才知道

所以,對于成熟的開發體系,開發者的注意力肯定會更多放在「左邊」。

為了賦予開發者更多支持,前端「基建」會越來越偏左。

從Run到Build

「前端框架」的發展是個明顯的例子:

中世紀

作為前端領域第一大框架,jQuery是絕對的運行時方案,他幫助開發者在代碼運行時抹平瀏覽器的差異。

[[416400]]

jQuery yyds

近代

到了React、Vue,都需要引入編譯能力。

React需要編譯JSX,Vue需要編譯模版語法。

現代

前段時間StackOverflow公布的《2021年開發者報告》中最受歡迎的前端框架Svelte更是打出了「零運行時」的口號。

圖片

從Build到Read

但是,Build畢竟不是最偏左的,有沒有從Build直接往Read(最左邊)發展的呢?

有,這就是LSP(Language Server Protocol,即語言服務協議)。

圖片

當然,不是這個LSP

LSP是編輯器和語言工具(例如linter、靜態類型檢查、代碼風格檢查)之間進行通信的標準協議。

沒有LSP,不同語言需要實現這些工具與不同編輯器的通信。

圖片

有了LSP,他就能作為語言與編輯器之間溝通的橋梁。

對于前端領域,不同前端框架都在積極探索LSP方面的可行性,比如:

  • Vetur[4]作為Vue針對VSCode的工具集,是Vue開發者的標配
  • 相比Vue的模版語法,React直接寫JS可以獲得更好的靜態類型分析。

雖然Hooks在書寫上有些規則限制,但是React通過Hooks相關lint很好規避了開發者書寫錯誤Hooks的可能性。

同時,所有Hooks有統一useXXX的前綴也為未來進一步的編譯時分析提供可能。

  • Angular也提供了Angular Language Service[5]
  • TailwindCSS提供了Tailwind CSS IntelliSense
圖片

總結

這些趨勢對于普通業務開發同學來說,意味著:未來會有越來越多前端工具提供「編譯工具」、「IDE插件」,現在有「webpack配置工程師」,未來可能需要團隊專屬「IDE配置工程師」。

對于想錯位競爭的前端同學,可以學習LSP相關知識,未來走大廠基建崗位。

參考資料

[1]Language Servers are the New Frameworks:

https://dev.to/dx/language-servers-are-the-new-frameworks-1lbm

[2]Compilers are the New Frameworks:

https://tomdale.net/2017/09/compilers-are-the-new-frameworks/

[3]Shift Left:

https://devops.com/shift-left-can-you-be-left-out/

[4]Vetur:

https://github.com/vuejs/vetur

[5]Angular Language Service:

https://github.com/angular/vscode-ng-language-service

 

責任編輯:姜華 來源: 魔術師卡頌
相關推薦

2013-10-21 09:09:14

惡意App安全軟件手機病毒

2018-08-23 22:00:18

編程語言PythonHTML5

2024-01-24 09:02:45

React版本Next.js

2021-07-16 23:33:08

IT計算機薪資

2021-08-03 10:40:24

Kubernetes容器公有云

2024-11-20 16:14:53

2021-03-22 16:02:47

程序員大數據軟件

2020-12-25 10:14:26

人工智能AI深度學習

2010-04-02 16:28:41

2022-05-07 07:47:23

SpringJava開發

2012-12-17 15:02:34

Linux操作系統

2015-12-28 13:37:14

云通信

2022-04-26 07:18:14

Tailwindcscss

2013-06-14 09:40:34

扁平化設計iOS7

2022-11-01 13:30:08

云托管云計算

2018-02-28 14:51:05

AI人工智能機器人

2009-02-27 13:58:10

2020-07-31 08:25:39

WindowsLinux微軟

2013-06-14 09:41:58

扁平化扁平化設計UI設計

2018-03-16 15:31:50

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 天天综合网天天综合色 | 欧美国产精品久久久 | 国产成人久久精品一区二区三区 | 8x国产精品视频一区二区 | 欧美视频 亚洲视频 | 精品毛片在线观看 | 久久国内精品 | 国产激情视频在线观看 | 亚洲一区二区三区四区五区午夜 | 色欧美综合 | 亚洲国产一区二区三区在线观看 | 久久久久免费精品国产小说色大师 | 久久人爽爽人爽爽 | 中文一区 | 亚洲欧美激情精品一区二区 | 81精品国产乱码久久久久久 | 免费在线a视频 | 久久www免费视频 | 免费久久网站 | 成年无码av片在线 | 亚洲毛片在线观看 | 91精品国产综合久久久久久蜜臀 | 毛片在线免费 | 一级黄色毛片免费 | 请别相信他免费喜剧电影在线观看 | 亚洲精品久久 | 国产成人精品午夜 | 精品综合| 色资源站| 99reav| 欧美一区二 | 久久免费精品 | 久久精品国产一区 | 日日摸日日添日日躁av | 国产伦精品 | 婷婷综合五月天 | 人人亚洲| 欧美在线视频网站 | 久久精品国内 | 日韩精品久久久 | jizz亚洲人 |