好久沒有發文章了,我并非閑著,而是把原來發博文的形式轉成了寫稿,
今年是非常特殊的一年,長這么大,從來沒有休過如此漫長的寒假,也從未在家進行過一個月以上的遠程辦公,新冠肺炎對各行各業都產生了巨大影響,總之,今年實在是太難了,不管怎么樣,作業還是要繼續的,今年主要做了三個專案,技術堆疊都是一樣的,那就是:
前端:vue2.x、webpack4.x、axios、element ui、echarts、vue-router、vuex、scss、websocket、svg
后端:spring cloud、kafka、mongodb、mysql、redis、plc
開發人員配置:
前期:后端5人、前端3人、產品1人、UI1人
后期:后端4人、前端1人、產品1人、UI0人
很顯然,我就是一直堅守的前端^_^
說明:專案截圖調整了視窗尺寸的,回應式做得不是很好,所以顯示上也不是那么友好,
1.智能設備管控平臺

2.智慧監管

3.空調控制系統
這專案一開始只是空調控制的小專案,做著做著就不斷加功能,搞到最后很龐大了,由于沒有使用typescript,有時候,需求一大變更,然后寫錯一個小字母,或者搞錯個型別,錯誤找了許久,


關于這個系統組態圖是怎么做的?不斷的有同仁問到,這塊我確實花的時間比多,足足一個月吧,我里簡單說下,自己用html5+css3+svg封裝各種vue組件,水流動效果用svg做影片,其它部分都是HTML,然后根據不同的模板生成的,有一個專門的系統圖配置界面,如下圖所示:
選擇不同的配置項,會有不同的設備,然后可以生成不同的系統圖,難點在于,每一根水流線的判斷邏輯,因為它要根據資料實時改變狀態,它根據泵和閥門的狀態來控制水流是否流動,以及水流的方向,而且根據設備數目的不同,線的展示也會動態變化,系統圖,除了監,還要控,每一個系統圖上的設備都可以可以點擊,控制它的啟停,以及頻率等引數,控制之后,系統圖會相應的改變水流狀態和設備狀態,
這三個PC專案也配套有App應用和微信小程式應用,
App技術堆疊:vue2.x、vant、mui(僅用于處理home鍵回退)、HTML5+(呼叫手機原生api介面,例如:拍照、相冊、語音等)、websocket(界面實時重繪)
打包工具:HbuilderX(Android云打包)、xcode(主要用于ios無證書打包)


不知道從什么時候開始,一個前端人員要承擔起app應用前端、微信小程式、PC前端的開發,還要懂得撰寫sql腳本、nosql相關的shell命令、linux部署、Nginx配置....美工好像已經逐漸被UI取代了,現在都很少聽說美工了,美工的作業也被UI兼任了,
現在公司的后端還要兼任專案運維的作業,還好這一塊不用前端來管,只需要配合就行了,畢竟業務這塊都掌握在后端手中,不過我還是要吐槽后端,本來可以用Spring Boot很好的玩耍,偏偏要玩Spring Cloud,現在好了,許許多多專案都是要獨立部署的,微服務自己把自己玩死吧,N個服務,啟動順序有依賴關系,結果服務器重啟之后經常出問題,還有mongodb,一些獨立部署的服務器,配置奇差無比,本來資料量就不大,mysql即可完美支持,把這家伙一上,經常跑著跑著跑不動了,記憶體被吃了,
作業之余,今年又完成了兩本書的撰寫,可能是因為疫情的緣故,周末一直宅在家里寫稿,今年破天荒的完成了兩本書,而且是兩本書同時寫稿的,一本是《Javascript實用教程》,主要講解js在前端作業當中使用的技術以及ES6~ES10新語法特性的介紹,另一本是《react+node+mongodb實戰開發》,主要介紹:node.js、express、mongodb、Ant Design、react技術堆疊的聯合應用,也即部分前端人員口中的全堆疊應用,其實這完全無法達到全堆疊的要求,我認為全堆疊至少還應該熟悉java、.net、php技術堆疊和各種sql和nosql,這最多算全堆疊入門筑基,所以全堆疊的門檻還是很高的,普通人恐怕得十年編碼經驗以上才能同時掌握那么多技術,雖然書稿已完成,可是要明年才能出版去了,從交稿到出版動不動就是半年,我都已經習慣了,我寫書的特點是:只寫作業當中應用頻率高的,也就是說,相對回報率高的東西,只有這些東西,才值得花時間去投入,因為學習是需要成本的,我們所有的投入都希望能夠獲得更好的回報,
react這本書,我是特意要求出版社編輯按照我的想法來設計圖書封面,封面上我想要一個金黃色的屋子,屋子里有一個看書的美女,寓意:書中自有黃金屋、顏如玉,不答應我的要求就換出版社O(∩_∩)O哈哈~
居安思危,盡管作業中一直使用的vue技術堆疊,但是我還是抽時間去學習react技術堆疊,因為值得投入,作為一名前端工程師,vue和react都是必須要掌握的,因為要用xcode,猶記得第一次用mac電腦的時候,我去,在Windows上的使用經驗幾乎沒用了,一步一步查資料,太特么痛苦了,可是所有的痛苦都是因為我們還沒有適應罷了,
至于微信小程式,我認為可能是接觸過的所有技術當中,用起來最簡單的了,難怪叫小程式,檔案又算是寫得最好的之一,沒有神馬可說的,哪里不會就查檔案,然后去github上下載一個專案研究一下原始碼就可以了,
從.net到前端這3~4年時間,雖然接觸了許多新技術,可是在應用的程序當中,我發覺前端一直在跟隨后端的腳步,逐漸向組件化、模塊化、面向物件和各種設計模式的應用方面發展,所以如果有后端開發基礎,學前端會感覺非常輕松,可能感到困難的,反而是與編程語言無關的css,這需要記很多東西,尤其是一些極端情況下,要兼容一些奇葩的瀏覽器版本,各種css的hack,只有代碼敲得多,界面做得多才能熟練掌握,并非關鍵時刻查一下檔案就能行,你可能得不斷查、反復查,界面的撰寫也和系統框架的搭建一樣,需要全域考慮的,如何保證可擴展、高性能、精簡、一致性、兼容性的界面需要深思熟慮,
做前端有一點不好的地方在于:你將會把大量的時間花費在界面撰寫、介面對接、界面互動及特效實作上,而業務邏輯和底層架構將會很難有時間和機會去深耕,這是由前后端分工所致,前端作業重心在于可視化部分,而后端在于非可視化部分,
關于前端的學習路線,我的建議是:先html、css、JavaScript,然后是vue、再是react,至于angular,可在作業當中要用時才學,后面就是webpack、node.js、mongodb(nosql選學一種)、mysql(sql選學一種),因為是相通的,你不可能在有限的時間內把所有的技術都掌握,學習是一種投入,我要考慮回報率,很多時候,我們的投入是沒有回報的,因為你所掌握的東西,如果無法應用到實際作業和專案當中,就不會產生價值,學編碼的訣竅就是沒有訣竅,碼敲百遍,其義自見~O(∩_∩)O哈哈~
有時候也會細思極恐,一個人要負責2個.net專案的維護,6個app、3個微信小程式、6個PC專案的前端維護和開發,可是平常不去想,也就沒啥了,一個人在一家公司干得越久,在對專案代碼更熟悉的同時,坑也挖得越來越多,我倒是擔心下一個來接替我作業的人,畢竟,沒有人比我更清楚還有多少坑擺在那里O(∩_∩)O哈哈~
最近戀上了雞尾酒,不吸煙的我,經常晚上熬夜寫稿,而來點酒會更有精神和感覺,今年一直宅著,整個人胖了一圈,開始出現小肚肚了,從此多了一個目標:減肥,正是:‘’頭可斷,發型不能亂“,發型一亂,盡顯頹廢...待書出版時,自駕游一周去....
家里的橙子又快熟了,需要橙子的朋友可以入掃碼微信群,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/195977.html
標籤:其他
