引子,我去小說看多了,寫博客居然寫引子了!!!不過,沒引子不知道怎麼寫了。言歸正傳吧,前端這個職業,也就這幾年剛剛火起來的職業,之前那個混亂的年代,前端要麼是UI設計師代勞解決問題,要麼就是後端程序員小帥哥稍微代勞一下,百度一下,google一下,ctrl+c,ctrl+v,而後搞定了,沒啥事了,反正能用。反正前端html+css+js 就是一種小語種,沒人當個寶。css
可是隨着技術的發展,人們對於任何事物在看重實用性能的同時,也愈來愈重視自個人體驗,好比當前流行的互聯網企業,除了要有出色的性能和實用性,還要有良好的界面、客戶體驗,這樣才能吸引人。因此對於初創的互聯網公司來講,最燒錢的時候就是剛剛得到風投或融資的時候,由於那時候尚未客戶訪問,因此他們不得不把錢砸向前端,只有作好前端技術、客戶體驗,一切纔有可能。當有了來訪者,訪問的人多了,纔會優化後端,作客戶分析等等。因此互聯網公司得到融資後的第一件事每每就是招聘Web前端開發人員,先把前端和用戶體驗作好,打好發展第一炮,這也是爲何Web前端開發這麼火、工程師薪資高的重要緣由。html
可是,這時還不能算最火,真正引爆前端的是,移動端的興起和爆發,這樣才真正促成前端開始火熱。並且隨着H五、C3的推出、各類框架的熱潮、模塊化啥啥啥的、外加薪資的漲幅等等,真正帶動了咱們如今作的這是職業-----前端開發工程師前端
有點跑偏了,如今迴歸正軌。咱們如今開發的前端,儘管如今推陳出新了不少技術,可是不少公司,說白了,仍是搞着最原始的開發,即這邊搞一段HTML,那邊加個CSS,最後搞點js來,湊合湊合搞成一個頁面,沒有什麼所謂的正規。致使前端開發真正的難維護。這只是其中一點。也是致使不少程序員最不肯意的就是維護別人代碼,想死的心都有。下面列舉一些我遇到的狀況程序員
我想,不只是我,誰看了都頭疼,反正我直接拒絕維護。哈哈編程
這時候會有不少人跳出來,不是有了模塊化呀啥啥啥的,這個還有必要嗎?我想了想,確實不必,可是別急,這也是一種高效開發風格和高效可維護風格,畢竟做爲一種可選方案仍是很好的。後端
面向UI編程,以UI爲基礎,以數據爲核心。框架
解釋一下,這裏的UI不是UI給出的UI圖,而是咱們寫出來的html;數據不是靜態寫死的,而是咱們經過各類方式得到的數據,而後塞給html。再加上div佈局方案,一個網頁很容易進行佈局開發和高效維護。下面直接上圖解釋:模塊化
上面只是結合div佈局,將頁面分模塊進行分別開發。可是,佈局
根據這2個思想,面向UI編程的第一步固然是不可取。每一個UI模塊的代碼量和數據量十分大,根本不是高效開發和高效維護的榜樣。其實可能有些人也想到了一些,將這4個大模塊,再進行UI劃分。性能
對的,將一個大的UI模塊,再進行細小UI模塊劃分,見下圖:
正如頁面上所寫的,我將每一個UI細分到原子層面,對於整個頁面生態來講,缺乏一個原子,不會讓整個頁面坍塌。就算我下線維護,我只要卸載一個我要維護的模塊,而後我進行線下開發,而後開發完畢,再進行裝載。這樣就達到了一種電腦上usb的效果,熱插拔的效果,這樣對總體是沒有影響的,你有沒有我都不會崩潰,只是多了你,我多了一個功能,少了你,我只是沒有這個功能而已。
正如面向對象思想那樣(相信大部分程序員都知道面向對象思想把,雖然我也沒對象,嘻嘻),以對象爲基礎,將最小原子分爲對象,而後進行對象組合,原子對象組合成小對象,小對象組成大對象,大對象組成史前對象等,而後將功能根據業務和技術進行組建,達到咱們所要的效果。
固然啦,這個思想還不是很成熟,有不少欠缺的,好比模塊之間的關聯關係,數據的流轉以及變化等等,不過還在摸索,有什麼好的建議,但願你們一塊兒提出來,咱們一塊兒商量,畢竟集思廣益嘛。
我相信面向UI編程不少人都這樣想過,也這樣作過,只是沒達到一種共識和快速開發的方案。我這裏提出來,其實我也是思考了好久,作了不少技術積累和思想積累。想將這個思想搞成一個前端的js框架的。
該框架的一些基礎功能:
還有不少功能,不過就先實現這些功能。也爲前端快速開發和高效維護貢獻本身的一份力量。
大概的佈局和設計以下:
PS:由於流轉過不少公司,代碼風格千萬遍,維護根本進行不下去。代碼規範幾乎等與虛設,一些佈局思想,開發思想等幾乎等與放棄。從不按套路出牌,怎樣順手就怎樣。埋了多少雷,後面的估計屎都會炸出來的,哎,阿門!