如果你是一個天才工程師(馬上可以離開),可以獨立完成一個很多事情,你可以是一個怪咖,因為我相信沒有一個人不會不佩服你。但現(xiàn)實歸現(xiàn)實,多數(shù)人都不是天才,而我們在職場上也不是單打獨斗,我們需要團隊合作,需要協(xié)調和配合,需要考慮除了代碼以外的更多事情。
前端工程師,也不僅僅只是負責接資料,撈數(shù)據(jù),做個回應。當然只做這些也并沒有不對,但我們需要和后端工程師溝通,我們也需要和設計溝通,也需要和 PM 溝通,怎么做才是對這三方都比較有好處?
邏輯思維
在開始寫某一段代碼的時候,想一下它會用在哪里,會重復用嗎? 它以后會不會變,如果會變,那可以怎樣變?一般網(wǎng)頁結構的變化,雖然有很多但是也有一個根據(jù),這個根據(jù)就是可以預先估計好的。沒有一個案子,是不會「不改」的,很多時候你都是要一邊做一邊改,甚至可能會來個乾坤大挪移。當真的需要發(fā)生變動和修改的時候,你有什么對策?這些都是需要想好,并且建立在一個邏輯上。
通常專業(yè)的設計師,設計一個網(wǎng)頁的元素都是同質性很高,等比或對比的,所以代碼按理也是可以重復用的。所以為何你要學會用 CSS preprocessor (Sass,stylus,less),寫一個 Mixin 或一個變量,一開始用你會覺得很麻煩,但是用了你就回不去了,不但提高你的效率還提高了你的準確率。
工程師的世界就如武林,大家都各自修煉,每天都有新的祕籍,大家都很好奇跑去修煉一下,希望有天成為武林高手。這也是提升你見識和專業(yè)的潛動力,如果你沒有好奇心,看的和懂得東西太少,邏輯自然不會跟上時代。要保持不斷的學習,來磨練自己的邏輯思維。
邏輯思維某程度,就是你的程序專業(yè)能力,除了能寫出來還要可維護,可閱讀。當事情建立在一個很好的邏輯上,那么出錯幾率就會比較低,和你工作的人也會比較愉快。
可以把一件事做的很好,那是師傅;可以把一件事做好和預測未來的事,那才是專家。
商業(yè)思維
PM、老板或者客戶,都會問你,「你需要多少時間」,如果說的太短,可能會做不完;如果說的太長,也不可能,這是一個怎么回答怎么死的問題。有時候,需要換一個立場,站在第三方的角度思考。我們的完成度,和他們的完成度可能是不一樣的。
我們把案子的細節(jié)分成兩種情況,一種是你已經(jīng)有經(jīng)驗,可以預估時間的;一種是你沒有做過或你很陌生的,你沒有時間估計的基礎。
那么提出一個,他們可以最低接受的標準,例如一個 App 網(wǎng)站,最低標準需要一個首頁,和一個鏈接去下載 app 的 2 個按鈕,這些都是可以預估的。而剩下的,你需要 Research 一下,之后再給一個比較有根據(jù)的時間。估計一個案子需要多少時間做完,是非常非常的重要,因為你消耗的是一組人的時間,不是你自己的(除非你自己一個人做,或者你是老板)。如果你估算錯了,后面就會延期,做不出來沒有很大的關系,最重要是把問題解決,提出你的解決方法,什么樣的方法才可以達到解決問題的目的。
換一個立場提出解決方案,對事情是有幫助的,對公司或客戶是有幫助的,客戶不會在乎你解決不了手機網(wǎng)頁看不到 20 個欄位的 table 那個問題,但是客戶很樂意聽你說,這樣的 Table 不好看,可以換一個顯示的方法。客戶也不太在意你是用 Rails 還是 php(有些是很在意,他們假裝他們懂),可以購物和發(fā)文就好。
前端工程師可能很容易接觸到客戶的投訴,所以有些東西沒有想好,就會很麻煩。做個網(wǎng)站,換作你是網(wǎng)友或客戶,你會滿意你自己做的網(wǎng)站嗎?
設計思維
很多時候,前端工程師本身也是設計師,但是也有很多是本身是前端工程師也是后端工程師,設計和前端是分割不開的。當然我這里說的設計,不是真的要你弄一個畫面或完整的設計圖。
It’s not just what it looks like and feels like. Design is how it works. —Steve Jobs
前端的設計是指一個畫面或元素,如何被執(zhí)行和創(chuàng)造,移動或消除,這個設計在不同的寬度和高度,不同的裝置看,效果是怎樣,考慮進去就是你的設計思維,怎么把設計師的畫面弄成一個活生生的網(wǎng)頁,要用設計師的角度去思考,才能有辦法把設計圖的概念充分的表達出來。
話說早前,收到一個「設計圖」,上面有一個「X」,我問客戶這是什么,他說是「回上一頁」,為何回上一頁是「X」,這不是一個 popup 也不是一個 modal,同時這個圖上還有很多不同顏色和大小的「X」,分別代表了「刪除」、「關閉」、「滑下」,這是一個不太合理的設計。
設計的思維,會直接影響你寫的代碼結構和網(wǎng)頁結構,因為你看不出設計的重點在哪里,怎么寫才可以達到設計師要求的效果,你沒有辦法好好的組織你的結構和元素,就無法好好把網(wǎng)頁拼湊出來。這不但大大降低了你的效率,做出來的東西也不會一致。可能一個網(wǎng)站,就出現(xiàn)幾種本該一樣,結果「很像」但是不一樣的按鈕,因為你用了幾個 class 和不同結構來做。你一開始就沒有好好思考設計。
你可以做什么
沒事要練功,F(xiàn)B 逛幾分鐘就好,不需要留戀太久。
做好一個網(wǎng)站,自己玩一下,給你朋友玩一下,問一下他們的意見?多問幾個。
多看設計圖,看思考一下你會怎么做。
-
工程師
+關注
關注
59文章
1570瀏覽量
68514
發(fā)布評論請先 登錄
相關推薦
評論