程式設計師提公升自我修養的具體方法有哪些?

2021-07-16 00:18:39 字數 3063 閱讀 8079

1、科學基礎

1)資料結構

資料結構課程的理解能力,也是乙個人數學能力的體現,資料結構學習的好壞,是程式設計師水平差異的乙個重要分水嶺。

2)作業系統

3)資料庫

傳統的關係型資料庫,入門簡單,深入卻難,往往開發人員能夠較快的掌握增刪改查、檢視、索引、儲存過程等基本資料庫操作,卻在編寫複雜查詢、設計主外來鍵、優化字段、去除冗餘等時,出現只會依葫蘆畫瓢卻不能自主思考擴充套件的狀況。

究其原因還是沒能了解關聯式資料庫的根本原理,而資料庫這一門課程,系統的闡述了關係型資料庫的來龍去脈,了解其中的數學原理或邏輯基礎所在,對提公升資料庫程式設計水平有質的影響。

4)編譯原理

編譯原理是程式語言以及各類語言編譯器的科學基礎,可以說編譯原理創造了世界上的幾乎所有的it應用,學習編譯原理的基礎是資料結構和演算法,因此編譯原理的學習要花費更多的時間和精力。

由於現代高階程式語言的編譯器,在**優化、資源優化方面已經做的足夠智慧型,因此,編譯原理的學習對實戰的影響越來越小,但是正所謂本盛末榮。

如果認為自己對資料結構和演算法的學習達到了乙個較高的水平和狀態,可以在編譯原理學習上進一步深入,最終把自己和普通程式設計師拉開更大的差距。

2、英語能力

大部分程式設計人員,都具備英語四級左右的英文基礎,卻由於非專業以及工作環境原因,逐漸疏遠甚至完全淡忘了英語。

4)在自己技術知識範圍內的任何的英文的技術手冊、文件、文章或是問題描述,能夠讀懂8成的內容含義,能夠讀懂完整的技術含義。

3、搜尋方法

任何乙個開發人員,都應當具備搜尋能力,甚至是一定要具備搜尋能力,搜尋引擎的寶藏,是無窮無盡的,同樣具備搜尋意識的不同程式設計師,卻因為搜尋技巧的差異最終在程式開發質量、專案實施效率、甚至是工程產品質量上出現數倍的差異。

因此,掌握高效、先進、靈活的搜尋方法和技巧,是非常非常非常(重要的事情說三遍)有用的。其中主要的方法介紹如下:

1)搜尋源選擇

對於qq群,建議不要使用,除非qq群主或者成員是非常閒或者非常非常熱心的人,否則在qq群詢問技術問題,是非常低效率的搜尋方式。

在平時的程式設計中,一定要注意相關方法和經驗的積累。

3)聯想搜尋

聯想搜尋,不屬於搜尋引擎的範疇,卻是在搜尋中很有用的高階技巧。

這樣的聯想搜尋,不僅能夠幫助搜尋正確結果,也是對大腦思維的訓練,值得多多嘗試。

4)資源搜尋

開源的框架、產品、工具、控制項等開發輔助類東西越來越多,穩健性和迭代性越來越強,去尋找一款成熟的工具或者外掛程式,也成為了大量開發者的必備方法和技能。

4、思維模式

開發人員,一定要養成業務思維的模式,所謂的業務思維,就是在做任何乙個專案的時候,寫任何**前,需要對專案本身的業務概念和業務邏輯甚至業務流程都要有乙個全面的學習和理解。

這雖然不是乙個專案的強制要求,卻是乙個很好的開發習慣,無論自己的覺得是開發者還是測試員又或是技術總監,掌握了業務原理,才能夠更好的設計或閱讀專案的資料結構和流程結構。

程式設計師的思維往往和使用者或者客戶是不一致的,擺脫技術思維模式,習慣於用業務思維解決問題的程式設計師,不一定最優秀,但一定是乙個很容易溝通的程式設計師。

5、工作與程式設計習慣

有的人說愛乾淨浪費時間,所以不修邊幅,但歸根結底這還是習慣問題,當養成清潔衛生的習慣並使之成為生活慣性時,往往就不會耗費更多的時間,反而顯得乾淨幹練。

寫程式同樣如是,有一些程式設計習慣,看似不足為道,看似浪費時間,可是如果堅持下去,最終都能收到意想不到的奇效。下面列舉一些特別重要的習慣。

1)快捷鍵的使用

無論是使用windows、linux作業系統,還是在ide中,快捷鍵都是系統本身的標配,事實上,ctrl+c、v這樣的操作,大部分人都能嚐到在節省時間上的甜頭。

把這個概念進一步擴散,如果在ide中編寫**,除了**本身,將其餘所有的滑鼠操作、鍵盤定位操作,都用快捷鍵來代替的話,在時間上將會有數量級的節省。

然而看上去這麼好的事情,真正堅持去執行並形成習慣的人屈指可數,因此,在初期的改變習慣,記住快捷鍵,會是乙個長期的過程,需要不斷的堅持。

2)**注釋

乙個開發人員隨著年齡和經驗的增長,所參與的專案,再也不是靠乙個人或者幾個人就能完成的。

系統的重構、**的重構、工作的交接、對新進人員的培訓等等類似的事情,會越來越多的遇到,這些事情無一例外都會把已經寫過的**重新或者重複閱讀,如果在初始編寫**時,就做到完整、清晰明了的**注釋,對後續工作會有巨大的幫助。不僅提高工作效率,還能增強合作好感。

事實上,就算只是自己看自己的**,如果有注釋,也能加深印象,縮短**查詢時間。因此,任何開發人員,都應該養成良好的**注釋習慣。

優秀的**注釋應該能做到:

3)命名規則

具備一定規模的軟體公司,在**編寫上都有一套自己的命名規則,涵蓋專案、模組、函式、變數等等,標準化命名的好處不言而喻,然而被動、被迫去遵守命名規則和主動習慣於使用命名規則是完全不一樣的。

乙個優秀的開發人員,應當發自內心的希望各種**命名都是有規則的,易讀的,而不是糾結於命名規則會增加碼字長度。

4)不將就的程式設計邏輯

所謂不將就的程式設計邏輯,其對立面就是不講究的程式設計邏輯。

不講究的程式設計,不僅是一種很壞的程式設計習慣,也體現了低下的生活品質,很多開發人員,因為個人習慣、趕工期、客戶要求不高等多種原因,在程式設計時特別隨意。

程式設計人員,應當有擔當有態度,養成不將就的程式設計邏輯,不勉強自己,也不輕視程式。

5)資料備份

誤刪、誤操作、電腦斷電、檔案遺失等等狀況是每乙個開發按人員都可能遇到的問題,如果不希望辛勤的勞作被浪費,不希望偶然的意外影響工作,那做好備份是必不可少的。

在較大規模的公司,會有完整的源**管理以及資訊保安防護,而無論是在大公司工作,還是身處較小公司或者在實現個人**價值時,都要做好**和文件的資料備份。

6)郵件工作方式

溝通是進步的源泉,如果說開發小組的熱烈討論是性格和激情的體現,那郵件的工作方式也是另一種穩重和高效。

無論是公司層面的工作溝通,還是開發小組的問題交流,郵件的作用包括問題正規化描述、工作留檔留痕、工作流程流轉、責任分工明確等等,習慣於將重大問題、重要事項通過郵件的方式與同事、主管等進行溝通,將會非常有助於團隊協作。

以上這些方法,是我這麼多年來的感受和體會,也給了我很大的幫助,希望也能夠幫助到大家,不能說一定可以「提公升修養「,但也是」提公升修養」的有效方式。

程式設計師的自我修養

一忌 輕易言敗,沒有自信 沒有永不放棄精神的程式設計師,只是乙個有程式設計師名號的假程式設計師。乙個真正的程式設計師,知道在程式設計的過程中,可能會遇到不計其數的困難和問題,可能有極多的挫折和失敗,而成功只有一次。就為解決乙個問題,我們可能連續十幾甚至幾十小時的坐在計算機前不停的工作。乙個問題解決了...

程式設計師的自我修養

一忌 輕易言敗,沒有自信 沒有永不放棄精神的程式設計師,只是乙個有程式設計師名號的假程式設計師。乙個真正的程式設計師,知道在程式設計的過程中,可能會遇到不計其數的困難和問題,可能有極多的挫折和失敗,而成功只有一次。就為解決乙個問題,我們可能連續十幾甚至幾十小時的坐在計算機前不停的工作。乙個問題解決了...

程式設計師的自我修養

對合作夥伴的尊重與包容 每個人的水平必然是不相同,大家各有擅長,並且在不斷進步中。所以遇到同事或者合作的友商犯了比較低階 對你來說可能是 的錯誤是很正常的事情,我們更多的是應該給與尊重與包容,而不是嘲笑或者消極對待。在不斷的鼓勵同事和合作夥伴之後,能感受到大家對我的信賴,特別是和友商的合作變得非常的...