天天看點

為什麼每個程式員都應該懂點前端知識?

為什麼每個程式員都應該懂點前端知識?

這裡說的前端知識是比較通俗的前端知識,包括網頁,桌面或移動端程式的界面,指令行程式的提示等等,即和使用者進行互動的那一部分。我的工作經曆中,很多人是不在乎這一部分的,更有很多人覺得這個很 low,在年初的時候,還聽到一位這樣說,“前端無非就是 copy paste”,在前端技術發展這麼迅猛的現在,還能說出這樣的話,可見這個人的眼界是多麼的狹小了,連沖他苦笑的時間都騰不出來。

由于工作内容的關系,大部分情況都是在 linux 的虛拟終端下,也就是敲擊鍵盤輸入各種指令,等着系統的回報。我使用過很多更好用的指令行程式的替代品,比如 top 指令的替代 htop,看看 top 和 htop 的差別吧,很明顯 htop 要更好用。

為什麼每個程式員都應該懂點前端知識?
為什麼每個程式員都應該懂點前端知識?

虛拟終端用了那麼多年,也沒有什麼實質上的改進,隻是多了幾種 shell 的變種,比如 zsh,fish 等等。實際上有很多人在做這方面的嘗試,原因也就是現在的虛拟終端太難用了。讓我們看看 black-screen 是什麼樣子的。black-screen 基于 electron 開發,也就是 github atom 的底層引擎。做的還不是完全相容,能滿足一般使用吧。

為什麼每個程式員都應該懂點前端知識?

即使在虛拟終端這個領域,大家都在追求友好的界面設計,以及互動的友好。如果你認為 black-screen 沒有什麼技術含量的話,那就大錯特錯了,一個頁面裡渲染那麼多的内容,如何提升渲染的性能,是一個很大的難題,github 對 electron 有很多的優化,都是在如何渲染字元上下的功夫,可 github 的技術實力,相比微軟還是差了一大截,微軟的 vscode 同樣基于 electron,但是啟動速度,運作速度都甩出 github 的 atom 幾條街。有點扯遠了,o(∩_∩)o~。

前面兩個例子可能有人沒有辦法了解,這和前端有什麼關系?從我使用這兩個工具的感覺是,他們更加好用,與原來的 top 和 terminal 來對比的話,我發現他的界面漂亮,使用起來簡單,出了錯誤的時候提示比較友好,比如 black-screen 在執行了一個長時間運作未立即傳回運作結果的指令時,它會顯示一個滾動的進度條,而傳統的終端就是停在那裡,也不知道它是不是已經僵死了。

拿我們用了一年的 opentsdb 說吧,那個界面真是讓人想死的心都有,動不動就是直接報錯,雖然是好東西,可是這臉面真是不能恭維。對比一下它和grafana。

為什麼每個程式員都應該懂點前端知識?
為什麼每個程式員都應該懂點前端知識?

其實也不用做這麼好看,但是最起碼是可用的,看起來是整整齊齊的,就像指令行的幫助文檔那樣,雖然是基于字元的,但是一看就是認認真真的做出來的,像 opentsdb 那個明顯是出來糊弄事兒的。

為什麼每個程式員都應該懂點前端知識?

這個都比 opentsdb 的界面好

現在到了大資料的時代,存儲資料是一個要解決的問題,從資料中發現價值是另一個要解決問題,而資料可視化可淺顯的歸為前端工作,畢竟是要從資料中“看到”價值,當然,這部分工作隻是懂前端知識是不夠的,是以如果大資料工程師能夠懂得如何将資料可視化出來,也許更能展現他們的價值,而不僅僅是把那些大資料的元件玩的滾瓜爛熟,卻不能“看到”什麼東西。

前端已然發展成為一個和大資料一樣熱門的職業了,雖然你可能不是一個前端工程師,但是稍微學一點,不要讓時代把你給落下了。