成為優秀程式設計師的十個Tips

2021-08-26 23:51:26 字數 1477 閱讀 5829

本文**:

理解技術債務

技術債務就像信用卡一樣,會有很高的利息率,時間越長,修復所花的代價就越大,程式設計師對這個要有深刻的認識。同時團隊應該培養一種保證設計質量的文化,應當鼓勵重構、同時也應當鼓勵其它有關**質量的實踐,在開發時間中應當專門抽出一部分以解決技術債務。如果沒有合適的照料,**會變得越來越複雜難懂,最後沒人想碰它。

保持對原理的好奇心

不僅知道怎麼用,還知道是什麼原因。比如你做 android,可以了解一下他的事件分發機制是什麼樣的,它的 measure/layout 是怎麼 work 的,有時間讀一讀它的源**,看看他的原生控制項是怎麼實現的。學 ios,了解一下它的記憶體管理,autorelease 是怎麼工作的,runtime 是怎麼工作的,runloop 的原理是什麼。做 server 開發,可以了解一下 nginx 為什麼效能好,redis 的工作原理如何,有時間也可以讀讀其源**。 做前端,也可以讀一讀 angular 或 react 的源**。

專注

同理心

寫**時要有同理心,考慮乙個有少量上下文甚至完全不了解上下文的另外乙個程式設計師他會怎麼樣讀這個**,這樣自然就知道怎麼寫出可讀性好的**,該怎麼命名,什麼地方該加注釋。 考慮以後維護**的這個人就是你自己,這樣在偷懶做一些臨時的 workaround 時就會三思。 交付給測試人員時也要有同理心,有沒有做基本的質量保證,有沒有跟測試溝通改動可能的影響範圍,讓測試人員可以更有針對性的測試。

謀定而後動

好的程式設計師不是拿到需求就開始寫**,而是先考慮清楚。 需求是否合理,是否能解決使用者的問題,邏輯上是否有模糊或不完備的地方。 然後考慮設計的問題,流程圖是什麼樣的,類圖是什麼樣的,介面是什麼樣的,對架構和模組的影響是什麼樣的,考慮清楚後才開始寫**。

架構思維/全域性思維

理解整體架構是什麼樣的,你開發的模組在架構中的層次,新增的改動會不會對架構有汙染,是否需要調整架構,所開發的模組可否抽象成通用模組或者可否復用已有模組,或則重構已有模組達到可復用目的。

設計語言

掌握適當的設計語言,比如 plantuml 或 visio,或者是一些設計模式,知道如何以簡單清晰的方式去跟其他程式設計師描述和溝通你的設計和架構,大家理解一致了,才能更有效率的合作。

追求**質量

**質量是程式設計師的立足之本,在這一點上,要有精益求精的「匠心」。 我看到很多普通程式設計師做了不少專案後水平提公升仍然不明顯,無它,對**質量沒有精益求精的精神。 **規範,健壯性,可讀性,可維護性,無重複**等等,都要精益求精。

**審查

自動化

好的程式設計師都應該有自動化思維和工具思維,都應該會一門指令碼語言,有自己的工具庫。我們應該通過工具及自動化來改善我們的工作效率,以及避免一些人為的失誤。

成為優秀程式設計師的十個Tips

理解技術債務 技術債務就像信用卡一樣,會有很高的利息率,時間越長,修復所花的代價就越大,程式設計師對這個要有深刻的認識。同時團隊應該培養一種保證設計質量的文化,應當鼓勵重構 同時也應當鼓勵其它有關 質量的實踐,在開發時間中應當專門抽出一部分以解決技術債務。如果沒有合適的照料,會變得越來越複雜難懂,最...

成為優秀程式設計師的十個Tips

理解技術債務 技術債務就像信用卡一樣,會有很高的利息率,時間越長,修復所花的代價就越大,程式設計師對這個要有深刻的認識。同時團隊應該培養一種保證設計質量的文化,應當鼓勵重構 同時也應當鼓勵其它有關 質量的實踐,在開發時間中應當專門抽出一部分以解決技術債務。如果沒有合適的照料,會變得越來越複雜難懂,最...

成為優秀程式設計師的十個Tips

理解技術債務 技術債務就像信用卡一樣,會有很高的利息率,時間越長,修復所花的代價就越大,程式設計師對這個要有深刻的認識。同時團隊應該培養一種保證設計質量的文化,應當鼓勵重構 同時也應當鼓勵其它有關 質量的實踐,在開發時間中應當專門抽出一部分以解決技術債務。如果沒有合適的照料,會變得越來越複雜難懂,最...