新技術、成爲一個大家願意跟隨的Leader、程序錯誤處理

好了,這是本系列筆記分享的第二篇。本期分享三個大方向,新技術、如何成爲一個大家願意跟隨的Leader、程序中的錯誤處理,廢話不多說,下面進入主題。

四、新技術

新技術、成爲一個大家願意跟隨的Leader、程序錯誤處理

這裏先問大家兩個扎心的問題吧。

你有多久沒學習過一門新的編程語言了?

如果需要你換一門語言來開始工作,你內心是否非常抗拒?

相信大家的答案和我都是一樣的,就目前很多工作中的程序員來講,他們很難再去學習一門新的語言,其實就是沒有開放的心態來接納新的技術,包括我之前也是這樣。看了這左耳的這幾篇課程,改變了我很多的想法,更多的對學習新技術有了很大的熱情,希望通過這次分享也能給你有同樣的熱情。

新技術、成爲一個大家願意跟隨的Leader、程序錯誤處理

 

1.Go語言

關於Go語言的介紹我在這裏就不過多贅述了,因爲這些相關資料在各大搜索引擎都能搜索到。

關於Go的發展和重要性是可以明顯的感覺到的,這幾年來關於PasS平臺、分佈式、微服務等等這些技術術語相信只要是做後端開發的小夥伴都會聽過,或許你正在做這方面的相關開發,可以說成爲了現在各大中小企業的主流開發技術,而這些技術背後很多底層支撐的基礎設施或多或少都能看到Go語言的影子,比如容器化技術Docker正是Go語言的殺手級應用,還有一些消息中間件等等。從這些方面能看得出來Go語言必然會成爲下一個關鍵技術。

2.Docker

Docker作爲Go的殺手級應用,其重要性不言而喻,它是作爲雲計算中 PaaS 的關鍵技術,現在在各大企業都有應用,目前我也是在學習Docker中,也建議大家有時間去接觸一下,爲未來的工作機會做積累和鋪墊。

 

五、如何成爲一個大家願意跟隨的Leader

新技術、成爲一個大家願意跟隨的Leader、程序錯誤處理

 

相信大家在工作中都會想成爲帶領團隊的Leader,一個團隊的Leader是非常重要的。Leader的作用是影響團隊成員,Leader的風格也體現團隊的風格,判斷一個團隊的凝聚力強不強,主要看這個Leader是否被大家願意跟隨。

新技術、成爲一個大家願意跟隨的Leader、程序錯誤處理

 

1.Boss和Leader的區別

關於Boss和Leader和區別,這裏用一張圖說明。

新技術、成爲一個大家願意跟隨的Leader、程序錯誤處理

 

2.成爲一個大家跟隨的Leader

要成爲一個大件願意跟隨的Leader需要做到以下的九點:

幫人解決問題

能成爲Leader的一個重要指標就是看這個人能否幫他人解決問題,作爲Leader幫人解決問題實際上就是解決團隊的問題。我認爲Leader的工作應該有70%是解決團隊中各種各樣的問題的,而不是自己撅着屁股去幹活。

被人依賴

團隊或身邊大多數人在做比較關鍵的決定時,都會來找你諮詢意見和想法。要有這樣的現象,你需要有技術領導力。

贏得他人的信任

信任是人類一切活動的基礎,人與人之間的關係是否好,完全都是基於信任的。對於信任來說,並不完全是別人相信你能做到某個事,還有別人願意向你打開心扉,和你說他心裏面最柔軟的東西。而後者纔是真正的信任。這還需要你的人格魅力,你的真誠,你的可信,你的價值觀和你的情懷等一些諸多因素,纔會讓別人願意找你分享心中的想法和情緒。

開放的心態 + 傾向性的價值觀

對新生事物和每個人的觀點要有開放的心態,但要有自己的判斷,有自己的堅持和傾向,而不是對所有的事物和觀點都採納

Lead by Example

需要親自做示範,那就需要終身寫代碼。示範的作用很強大,既能展示你的技術領導力,也能展示你的人格魅力。

保持熱情和衝勁

在這個世界上,有太多太多的東西會讓人產生沮喪、不滿、彷徨、迷茫、疲憊等這些負面情緒,但是幾乎所有的人都不會喜歡在這樣的情緒中生活,我們每個人都會去追求更爲積極更爲正面的生活方式。所以,作爲一個 Leader 無論在什麼情況下,你都需要保持熱情和衝勁,只有這樣,你纔會讓別人有跟隨的想法和衝動。

這需要鍛鍊你的情商。

能夠抓住重點,看透事物的本質

這個世界太複雜,有太多的因素和雜音影響着我們的判斷和決定。絕大多數人都會在多重因素中迷失或是糾結。作爲一個 Leader,能夠抓住主要矛盾,看清事物的本質,給出清楚的觀點或方向,簡化複雜的事情,傳道解惑、開啓民智,讓人豁然開朗、醍醐灌頂,纔會讓人追隨之。

描繪令人激動的方向,提供令人嚮往的環境

我相信,我們每個人心中都有激動和理想,就算是被現實摧殘得最兇殘的人,他們已經忘卻了心中那些曾經的激動和理想,但我相信也只是暫時的。一個好的 Leader 一定會把每個人心中最真善美的東西呼喚出來,並且還能讓人相信這是有機會有可能做到的。

甘當鋪路石,爲他人創造機會

別人願意跟隨你,願意和你共事,有一部分原因是你能夠給別人帶來更多的可能性和機會,別人覺得和你在一起能夠成長,能夠進步,你能夠帶着大家到達更遠的地方。幫助別人其實就是幫助自己,成就他人其實也是在成就自己,這就像一個好的足球隊一樣,球隊中的人都互相給隊友創造機會,整個團隊成功了,球隊的每個人也就成功了。作爲一個好的 Leader,你一定要在團隊中創造好這樣的文化和風氣。

六、程序中的錯誤處理

新技術、成爲一個大家願意跟隨的Leader、程序錯誤處理

 

相信大家在寫程序的過程中一定會遇到程序錯誤,正所謂無bug不程序,對於程序錯誤的處理也是我們程序員的一門必修課。

新技術、成爲一個大家願意跟隨的Leader、程序錯誤處理

 

1.同步執行下的錯誤處理方式

一、返回錯誤碼

利用返回值+errno的方式來解決。

這種處理方式帶來的問題是:

①程序員一不小心就會忘記對返回值的檢查,從而造成代碼的 Bug;

②函數接口非常不純潔,正常值和錯誤值混淆在一起,導致語義有問題。

使用多返回值來處理,比如Go語言,函數會返回兩個參數,一個result和一個err, err支持自定義,這裏的問題是需要寫大量的if判斷語句。

二、使用異常捕捉(目前最好的方式)

try - catch - finally 這個編程範式

2.程序錯誤的三種類型

資源的錯誤。當我們的代碼去請求一些資源時導致的錯誤,比如打開一個沒有權限的文件,寫文件時出現的寫錯誤,發送文件到網絡端發現網絡故障的錯誤,等等。這一類錯誤屬於程序運行環境的問題。對於這類錯誤,有的我們可以處理,有的我們則無法處理。比如,內存耗盡、棧溢出或是一些程序運行時關鍵性資源不能滿足等等這些情況,我們只能停止運行,甚至退出整個程序。

程序的錯誤。比如:空指針、非法參數等。這類是我們自己程序的錯誤,我們要記錄下來,寫入日誌,最好觸發監控系統報警。

用戶的錯誤。比如:Bad Request、Bad Format 等這類由用戶不合法輸入帶來的錯誤。這類錯誤基本上是在用戶的 API 層上出現的問題。比如,解析一個 XML 或 JSON 文件,或是用戶輸入的字段不合法之類的。對於這類問題,我們需要向用戶端報錯,讓用戶自己處理修正他們的輸入或操作。然後,我們正常執行,但是需要做統計,統計相應的錯誤率,這樣有利於我們改善軟件或是偵測是否有惡意的用戶請求。

綜合目前程序錯誤的三種分類我們可以總結對於程序錯誤的處理方式:

對於我們並不期望會發生的事,我們可以使用異常捕捉;

對於我們覺得可能會發生的事,使用返回碼。

3.異步並行下的錯誤處理方式

使用 Promise 模式處理錯誤。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章