這里說的前端知識是比較通俗的前端知識狼犯,包括網(wǎng)頁余寥,桌面或移動端程序的界面,命令行程序的提示等等悯森,即和用戶進(jìn)行交互的那一部分宋舷。我的工作經(jīng)歷中,很多人是不在乎這一部分的瓢姻,更有很多人覺得這個很low祝蝠,在年初的時候,還聽到一位這樣說幻碱,“前端無非就是Copy Paste”绎狭,在前端技術(shù)發(fā)展這么迅猛的現(xiàn)在,還能說出這樣的話褥傍,可見這個人的眼界是多么的狹小了儡嘶,連沖他苦笑的時間都騰不出來。
由于工作內(nèi)容的關(guān)系恍风,大部分情況都是在Linux的虛擬終端下蹦狂,也就是敲擊鍵盤輸入各種命令,等著系統(tǒng)的反饋朋贬。我使用過很多更好用的命令行程序的替代品凯楔,比如top命令的替代htop,看看top和htop的區(qū)別吧锦募,很明顯htop要更好用摆屯。
虛擬終端用了那么多年,也沒有什么實(shí)質(zhì)上的改進(jìn)糠亩,只是多了幾種shell的變種鸥拧,比如zsh党远,fish等等。實(shí)際上有很多人在做這方面的嘗試富弦,原因也就是現(xiàn)在的虛擬終端太難用了沟娱。讓我們看看black-screen是什么樣子的。black-screen基于electron開發(fā)腕柜,也就是github atom的底層引擎济似。做的還不是完全兼容,能滿足一般使用吧盏缤。
即使在虛擬終端這個領(lǐng)域砰蠢,大家都在追求友好的界面設(shè)計,以及交互的友好唉铜。如果你認(rèn)為black-screen沒有什么技術(shù)含量的話台舱,那就大錯特錯了,一個頁面里渲染那么多的內(nèi)容潭流,如何提升渲染的性能竞惋,是一個很大的難題,github對electron有很多的優(yōu)化灰嫉,都是在如何渲染字符上下的功夫拆宛,可github的技術(shù)實(shí)力,相比微軟還是差了一大截讼撒,微軟的VSCode同樣基于electron浑厚,但是啟動速度,運(yùn)行速度都甩出github的atom幾條街根盒。有點(diǎn)扯遠(yuǎn)了钳幅,O(∩_∩)O~。
前面兩個例子可能有人沒有辦法理解炎滞,這和前端有什么關(guān)系贡这?從我使用這兩個工具的感覺是,他們更加好用厂榛,與原來的top和terminal來對比的話盖矫,我發(fā)現(xiàn)他的界面漂亮,使用起來簡單击奶,出了錯誤的時候提示比較友好辈双,比如black-screen在執(zhí)行了一個長時間運(yùn)行未立即返回運(yùn)行結(jié)果的命令時,它會顯示一個滾動的進(jìn)度條柜砾,而傳統(tǒng)的終端就是停在那里湃望,也不知道它是不是已經(jīng)僵死了。
現(xiàn)在通常意義上的前端,就是HTML证芭,CSS瞳浦,JavaScript了,還有無數(shù)的前端框架废士,對于非專職的前端工程師來說叫潦,僅僅需要懂些基本的HTML,CSS官硝,以及一些CSS框架 就可以了矗蕊,比如Twitter的Bootstrap,在真正的前端工程師看來氢架,這些都是小菜一碟傻咖,而對于一個只搞后端的工程師來講,那真是全世界最難的事了岖研,他們看不起前端卿操,卻又做不出來。缺少界面孙援,你做的工具就沒有辦法用害淤,界面難用,工具也就很難用赃磨,雖然里面的代碼可能寫的很棒筝家。
拿我們用了一年的OpenTSDB說吧洼裤,那個界面真是讓人想死的心都有邻辉,動不動就是直接報錯,雖然是好東西腮鞍,可是這臉面真是不能恭維值骇。對比一下它和Grafana。
其實(shí)也不用做這么好看移国,但是最起碼是可用的吱瘩,看起來是整整齊齊的,就像命令行的幫助文檔那樣迹缀,雖然是基于字符的使碾,但是一看就是認(rèn)認(rèn)真真的做出來的,像OpenTSDB那個明顯是出來糊弄事兒的祝懂。
這個都比OpenTSDB的界面好
說點(diǎn)歷史問題吧票摇,最早的程序員根本不分前后端,VB砚蓬,Delphi的C/S時代矢门,界面就是妥妥拽拽,寫任何程序都是要自己做界面的;后來到了B/S時代祟剔,做網(wǎng)頁的稱為美工隔躲,終于提取出這樣一個工種,還需要懂PS切圖物延,又出來一個Dreamweaver宣旱,也是想拖拖拽拽的解決問題。再到后來教届,網(wǎng)頁前端越來越復(fù)雜响鹃,像Java社區(qū)出的JSF,還有HTML5崛起前的那兩年案训,Adobe的Flex买置,AIR,很多工作流軟件就是用這兩項(xiàng)技術(shù)做的强霎,以及Java從誕生起最雞肋功能— JavaFX忿项。那個時候,真正用軟件的人少城舞,其實(shí)也是人們不會用轩触,因?yàn)榻缑嫔弦簿褪乔岸肆耍瑳]有人用的明白家夺,太復(fù)雜脱柱。直到最近五年,到了每個人都會用軟件的時代拉馋,技術(shù)雖然是進(jìn)步了榨为,但是讓人們,從小孩到老人都能去用這些軟件的根本原因不僅僅是技術(shù)進(jìn)步煌茴,更重要的是界面的交互設(shè)計進(jìn)步了随闺,它讓每個人都能很簡單的學(xué)會如何操作。
現(xiàn)在到了大數(shù)據(jù)的時代蔓腐,存儲數(shù)據(jù)是一個要解決的問題矩乐,從數(shù)據(jù)中發(fā)現(xiàn)價值是另一個要解決問題,而數(shù)據(jù)可視化可淺顯的歸為前端工作回论,畢竟是要從數(shù)據(jù)中“看到”價值散罕,當(dāng)然,這部分工作只是懂前端知識是不夠的傀蓉,所以如果大數(shù)據(jù)工程師能夠懂得如何將數(shù)據(jù)可視化出來欧漱,也許更能體現(xiàn)他們的價值,而不僅僅是把那些大數(shù)據(jù)的組件玩的滾瓜爛熟僚害,卻不能“看到”什么東西硫椰。
前端已然發(fā)展成為一個和大數(shù)據(jù)一樣熱門的職業(yè)了繁调,雖然你可能不是一個前端工程師,但是稍微學(xué)一點(diǎn)靶草,不要讓時代把你給落下了蹄胰。
本文轉(zhuǎn)自OneAPM官方博客