漫談前端,咱來隨便吹吹水

    對於不少從事IT行業的人來講,就不得不讚嘆其發展的速度,可能一項技術用個兩三年就有點過期了,這其實也是整個互聯網大環境下迅猛發展的緣故,馬雲曾經說過,不少人以爲互聯網已經發展得差很少了,貌似如今已經很是很是智能了,其實真正互聯網開始發展到現在也僅僅才十幾二十年,僅僅是開始,將來也許不可想象,猶如哆啦A夢的口袋,永遠不知道何時它就掏出一個讓你眼前一亮,爲之讚歎的東西,而對於前端來講,可能發展要比後端來得更爲迅猛,更加快速,可能之前僅僅靠着html+css+一丟丟框架經驗就能安穩找到工做,但如今呢?去看看開源社區,去看看github時隔不久就冒出一個開源框架,node,vue,react,更有無數較小的框架如ionic,bootstrap,特殊應用型的three...之後還會更多,特別是H5,css3這些基礎的東西大升級,less,sass,webpack各類極易維護的新技術及程序預編譯處理機制,以及愈來愈多的開發者,應用商放棄萬惡的ie(請暫時容許我這麼說= =),對於來發者來講會愈來愈友好,開發者有更多的時間用在對前端更深層的思考上,整個前端,整個交互的界面,整個展示在用戶觀感中的那個視野,會愈來愈震撼,VR,AR這些其實僅僅是開始,不只僅是體如今絢麗多彩的特效,更多的是體如今用戶在用這個產品的時候,會愈來愈舒服,怎麼舒服怎麼來,會讓你的懶癌無限期的延長,會的。javascript

    講到這,可能你會問,誒,jquery呢?跑哪了,它不是也是個框架麼?是的,它是,但發展到如今來講,它更相似於一種生態,一種能夠解決80-90%問題的生態語言,不少時候它就像是javascript同樣親切,甚至對於如今大多數開發者來講,jquery用的要比js多得多,由於寫得更少,作得更多,css中的less(爲何叫less呢,想一想= =),也是同樣的,兼容這個東西呢,得考慮,特別是有歷史遺留的,而jquery生態就是一個很是好的選擇。css

    對於每一位前端開發者來講,入門很簡單,你會個標籤+一點點css樣式佈局便可(這是ie曾經統治多年的那個時代,固然也才僅僅幾年,十幾年前之間),但你會發現知識的更新速度快到你不可思議,新技術層出不窮,新的開源框架團隊一個接一個,優秀的開源框架更是一籮筐,你會發現有點跟不上或者甚至說會的那點技能很快就不值錢,你須要不斷的學習和更新知識,是的,能碼代碼的不少,碼高質量代碼的也很多,但能徹底明白怎麼碼,要碼什麼,用什麼碼的就很少了,這些都先不提,單單論知識面吧,前端如今幹什麼事呢?它要幹或者說它已經能夠幹UI+前端+後端這樣的事了,固然了,確定沒另外兩個專業的幹得好,但不少時候對於一些項目來講,夠用就好,你會說前端怎麼幹後端的事呢?阿里這個確定是大夥都熟知的,雙11這樣的時候,在12:00那一秒鐘踏入的那一刻,你能夠想一想那中間的選單-購買-支付有多少?也許對於用戶的咱們來講就簡簡單單一個點點點,可是呢你得這樣想,全國,甚至全世界都在這樣點點點,這中間得產生多少的交互?這個峯值能讓這世上絕大多數的服務器集羣奔潰,阿里怎麼解決呢?可能到這你已經猜到了,是的就是用前端框架node.js來佈局架構的,那這個node是否是特別牛呢?也不是,只是它的處理機制剛恰好,也很是適用於這種形式的高併發處理。html

    那前端又是怎麼幹UI的事呢?專業的UI,優秀的UI前端無法比,也不可能去比,術業有專攻,那UI核心的那些是什麼呢?(本人僅僅是名小小的前端,說得不對請見諒)我認爲有很多,而圖形的處理,色彩及頁面風格的調配算是其中的兩方面,而前端呢?不用去幹這些,已經有很優秀的前端框架給咱們提供好了,裏面的主題風格也許不是很優秀的,但就目前來講也仍是至關的漂亮的,這裏再說下,技術的選型永遠不是這項技術多麼的牛逼,多麼的炫酷,而是這項技術適合,它適合因此選它,這個是什麼呢?你應該也猜到了,是的,它就是bootstrap,固然還有它的一些子集好比zui,固然這個給我最大的啓發不是它方便了前端多少多少的開發,而是它的柵格系統,移動互聯網到來以前,那個時候你們用的都是PC端,網站什麼的也不用考慮多終端的兼容,多終端的自適應,因此你們就用px啊,百分比啊,用的都感受很不錯,反正能用,對用戶使用影響不大,那當手機端來了的時候呢?前端的開發者們意識到,寫單單一個前端樣式已經不足以應付愈來愈多種屏幕的顯示方式,如何在這衆多的終端中讓整個的用戶體驗,那個展示在用戶視野中的東西儘量的達到觀感上的最佳,是一個必須且迫切要解決的問題,這時候前端開發者們怎麼作呢?(我根據事實來猜哈)都是程序員,那多種應用啊,有多個條件啊,確定必須得if判斷啊,這必須的啊!固然前端不叫if,它有個很高大上的名稱叫多媒體查詢,固然這個比較麻煩的是你仍是須要寫多個樣式,外聯的內聯的無論,反正你得寫多個,這就很煩了,就像明明我只須要執行一句,你一個if就得多一個代碼塊,好多個if甚至變成一大串,當項目結構很龐大複雜的時候,你會發現得多了不少不少的本來不須要的樣式表,有問題就得解決,那這時候前端的那些大神們又怎麼作呢?嗯,你想象下,我不論你這個屏幕,這個設備,或是渲染這個html的這個瀏覽器窗口有多大,我都給分紅多少格,Excel(Excel這個軟件實際上是一個很是笨的東西,爲何呢?它的行列數其實都是固定的,好像之前比較低級的版本是512列*1024行,稍微高版本的好像到65535了,只不過這個數很大,絕大多數人用不完的而已,連多少列多少行都得是固定的,是否是很笨?固然它是個很了不得的應用,也有多是裏面軟件底層架構衝突。)各位應該都用過吧,一個個的格子,但不一樣的是這裏的格子數列數是固定的,可能你屏幕大,界面很寬,那又怎樣?只不過拆分紅的這些單元格大一些就是了。那組成這些前端頁面的基本組成單位再也不是定死的固定像素了,這在大多數的時候就能夠很好解決了(固然還有rem這個也是很優秀的多終端顯示的方式),也許你會說bootstrap這個是給低級開發者或是給外包用的,我不能說你沒有道理,但也許幾年後bootstrap這個東西不適用了,但裏面柵格系統這個思想,這種模式必定還會存留,會延續,變成推進前端開發的一艘動力航母,一直不斷的向前。前端

    前面好像談了一大堆貌似還沒談到前端究竟是怎麼幹UI的事,好吧,漫談,咱們是漫談,別在乎細節,總之一小段話概況就是,項目通常開發的前工序流程是UI把產品經理跟客戶達成一致的需求還原成一系列psd圖,這些psd圖裏面是已經具有好後續整個系統的風格及色彩搭配了,前端再把這些圖還原成頁面就能夠了,不用考慮UI的事,那bootstrap這個東西呢,它就是把一些經常使用的psd圖中的東西先弄成一個個具備特定風格的組件供前端調用,前端能夠直接同產品經理來對接,雖然說沒有了psd圖,但最終完成的界面風格及色彩搭配也不會不好,還很漂亮(就目前來講),對於終端用戶來講,其實他們是不專業的,甚至他們連一些需求其實有時候都不是特別清楚,可能咱們弄了個方案給他們看,誒誒誒,對對對,就這樣的,嗯,仍是重申一句,技術的選型不是要多苛刻,要多高級,多新,多炫酷;夠苛刻,夠高級,夠新,夠炫酷就能夠了,強調一個夠字,因爲要作多終端的兼容適配,無法像之前同樣1px都不放過,那不現實,意義上也不是很大,可能對於UI來講,黃金比例就必須是0.618, 0.62,甚至0.6181都不行,但在用戶的眼中,其實它區別真的不大,0.62能夠,0.63也能夠,固然並非倡導亂來,得有原則,底線是不能觸碰的,但上面預留的這個操做空間是可更改的,這不只僅是節省開發成本,更重要的是極快的提升了開發效率,一個產品搶先發布那麼幾天,可能最終的結果就完徹底全不一樣,這就是不少時候常常聽到的一句調侃,嘿,程序員,程序猿,又得加班了,沒辦法啊,趕項目進度啊,你要先人一步啊,但項目任務仍是那麼多,要減小時間只能拼命擠,這是沒辦法的。這也就是爲何要組件化開發的緣由所在,代碼的複用性高,意味着你不用從新寫,不從新寫不是表明你不會,這是一個誤區,不會和不重複作一件會作的事是兩碼事,固然,組件化也給了不少前端新人便利以及不思進取的溫泉,這種只能說因人而異吧。vue

相關文章
相關標籤/搜索