0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何提高自己的編程水平

j4AI_wujianying ? 來源:未知 ? 2019-05-26 11:50 ? 次閱讀

不知不覺做軟件已經(jīng)做了十年,有成功的喜悅,也有失敗的痛苦,但總不敢稱自己是高手,因?yàn)楹臀夷恐姓嬲母呤謧儽绕饋?還差的太遠(yuǎn)。世界上并沒有成為高手的捷徑,但一些基本原則是可以遵循的。

1. 扎實(shí)的基礎(chǔ)。數(shù)據(jù)結(jié)構(gòu)、離散數(shù)學(xué)、編譯原理,這些是所有計(jì)算機(jī)科學(xué)的基礎(chǔ),如果不掌握他們,很難寫出高水平的程序。據(jù)我的觀察,學(xué)計(jì)算機(jī)專業(yè)的人比學(xué)其他專業(yè)的人更能寫出高質(zhì)量的軟件。程序人人都會(huì)寫,但當(dāng)你發(fā)現(xiàn)寫到一定程度很難再提高的時(shí) 候,就應(yīng)該想想是不是要回過頭來學(xué)學(xué)這些最基本的理論。不要一開始就去學(xué)OOP,即使你再精通OOP,遇到一些基本算法的時(shí)候可能也會(huì)束手無策。

2. 豐富的想象力。不要拘泥于固定的思維方式,遇到問題的時(shí)候要多想幾種解決問題的方案,試試別人從沒想過的方法。豐富的想象力是建立在豐富的知識(shí)的基礎(chǔ)上,除計(jì)算機(jī)以外,多涉獵其他的學(xué)科,比如天文、物理、數(shù)學(xué)等等。另外,多看科幻電影也是一 個(gè)很好的途徑。

3. 最簡單的是最好的。這也許是所有科學(xué)都遵循的一條準(zhǔn)則,如此復(fù)雜的質(zhì)能互換原理在愛因斯坦眼里不過是一個(gè)簡單得不能再簡單的公式:E=mc2。簡單的方法更容易被人理解,更容易實(shí)現(xiàn),也更容易維護(hù)。遇到問題時(shí)要優(yōu)先考慮最簡單的方案,只有簡單方案

不能滿足要求時(shí)再考慮復(fù)雜的方案。

4. 不鉆牛角尖。當(dāng)你遇到障礙的時(shí)候,不妨?xí)簳r(shí)遠(yuǎn)離電腦,看看窗外的風(fēng)景,聽聽輕音 樂,和朋友聊聊天。當(dāng)我遇到難題的時(shí)候會(huì)去玩游戲,而且是那種極暴力的打斗類游戲,當(dāng)負(fù)責(zé)游戲的那部分大腦細(xì)胞極度亢奮的時(shí)候,負(fù)責(zé)編程的那部分大腦細(xì)胞就得到了充分的休息。當(dāng)重新開始工作的時(shí)候,我會(huì)發(fā)現(xiàn)那些難題現(xiàn)在竟然可以迎刃而解。

5. 對(duì)答案的渴求。人類自然科學(xué)的發(fā)展史就是一個(gè)渴求得到答案的過程,即使只能知道 答案的一小部分也值得我們?nèi)ジ冻?。只要你?jiān)定信念,一定要找到問題的答案,你才會(huì)付出精力去探索,即使最后沒有得到答案,在過程中你也會(huì)學(xué)到很多東西。

6. 多與別人交流。三人行必有我?guī)?也許在一次和別人不經(jīng)意的談話中,就可以迸出靈感的火花。多上上網(wǎng),看看別人對(duì)同一問題的看法,會(huì)給你很大的啟發(fā)。

7. 良好的編程風(fēng)格。注意養(yǎng)成良好的習(xí)慣,代碼的縮進(jìn)編排,變量的命名規(guī)則要始終保持一致。大家都知道如何排除代碼中錯(cuò)誤,卻往往忽視了對(duì)注釋的排錯(cuò)。注釋是程序的一個(gè)重要組成部分,它可以使你的代碼更容易理解,而如果代碼已經(jīng)清楚地表達(dá)了你的思想,就不必再加注釋了,如果注釋和代碼不一致,那就更加糟糕。

8. 韌性和毅力。這也許是“高手”和一般程序員最大的區(qū)別。A good programming is 99 sweat and 1 coffee。高手們并不是天才,他們是在無數(shù)個(gè)日日夜夜中磨練出來的。成功能給我們帶來無比的喜悅,但過程卻是無比的枯燥乏味。你不妨做個(gè)測(cè)試,找個(gè)10000以內(nèi)的素?cái)?shù)表,把它們?nèi)汲聛?然后再檢查三遍,如果能夠不間斷地完成這一工作,你就可以滿足這一條。

這些是我這幾年工作生涯的一點(diǎn)體會(huì),希望能夠給大家有所幫助。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7295

    瀏覽量

    87534
  • 編程
    +關(guān)注

    關(guān)注

    88

    文章

    3544

    瀏覽量

    93482
  • 數(shù)據(jù)結(jié)構(gòu)

    關(guān)注

    3

    文章

    569

    瀏覽量

    40063

原文標(biāo)題:高手經(jīng)驗(yàn):如何提高自己的編程水平

文章出處:【微信號(hào):wujianying_danpianji,微信公眾號(hào):單片機(jī)精講吳鑒鷹】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    怎么樣提高verilog代碼編寫水平?

    時(shí)鐘域設(shè)計(jì)、低功耗設(shè)計(jì)等,提升自己的技術(shù)水平。 定期回顧和總結(jié):對(duì)自己編寫的代碼進(jìn)行定期回顧,總結(jié)經(jīng)驗(yàn)教訓(xùn),發(fā)現(xiàn)不足之處并加以改進(jìn)。 持續(xù)的學(xué)習(xí)和實(shí)踐是提高 Verilog 代碼編寫
    發(fā)表于 09-25 20:05

    如何提高自己編程能力

    如何提高自己編程能力
    發(fā)表于 08-09 11:57

    怎樣提高自己編程能力??我的C語言不太好

    各位有經(jīng)驗(yàn)的朋友,我的C語言不太好,不知道如何提高,好像進(jìn)入了一個(gè)瓶頸一樣,不知道該怎么學(xué)習(xí),肯定會(huì)有好多朋友說,多看書,多練習(xí),多寫程序,可是,我們總不能總是靠做編程的題目來提高自己
    發(fā)表于 07-15 01:09

    怎么進(jìn)一步提高自己水平額,,,

    現(xiàn)在學(xué)生,,,,看了郭天祥的視頻,,買了板子,,,只能說學(xué)會(huì)了,{:10:},,,稍微綜合的也就是時(shí)鐘結(jié)合鬧鐘、按鍵的編寫,,,,但是現(xiàn)在,,,不知道怎么提高自己水平啊,,,因?yàn)槟壳按笠唬?,,電?/div>
    發(fā)表于 07-20 19:36

    如何提高自己編程能力!!!

    的閱讀。閱讀不僅僅是指專業(yè)書籍文章,也包括所有的書籍文章。俗話說“書讀百遍其義自見”,廣泛的閱讀不單單會(huì)提高我們的編程能力,也會(huì)進(jìn)一步鞏固我們的細(xì)心。當(dāng)然,讀書也要取其精華,去其糟粕。像那些武俠玄幻
    發(fā)表于 08-05 09:29

    職場(chǎng)人士如何提高自己的薪資?

    永遠(yuǎn)都是必要的。而對(duì)于白領(lǐng)階層的我們來說,提高自己的技能是一切的希望!要想提高你的技能就要提高你的基本技術(shù)和專業(yè)技術(shù)。對(duì)于基礎(chǔ)的我們要不斷的積累,而對(duì)于
    發(fā)表于 11-11 17:21

    怎么提高PCB設(shè)計(jì)與繪制水平?

    小弟目前使用AD作為PCB設(shè)計(jì)軟件,公司目前只有我一個(gè)人做這一塊,PCB設(shè)計(jì)一塊一直想找人指導(dǎo),但是不知道怎么入手。想著在這里請(qǐng)教一下前輩們,PCB設(shè)計(jì)水平怎樣提高?很多人都在說,畫的多了,自然
    發(fā)表于 11-06 10:08

    如果你無法提升編程水平,看看這8個(gè)秘籍!

    如果你無法提升編程水平,看看這8個(gè)秘籍!“ 其實(shí),原因很簡單。你天天開車去上班,你的駕駛水平能能跟專業(yè)賽車手比嗎?你天天跑步鍛煉,你的體能可以跟專業(yè)運(yùn)動(dòng)員比嗎?業(yè)余的愛好者為什么花了大量時(shí)間去學(xué)
    發(fā)表于 02-12 10:52

    C語言的可移植性問題

    1.靈活地運(yùn)用結(jié)構(gòu)體和共用體提高自己編程水平;c語言位域結(jié)合共用體的使用,使變量 a 的每一位對(duì)應(yīng)結(jié)構(gòu)體位域中的每一個(gè)變量。使對(duì)變量的位操作變得通俗易懂。 注意:不同的編譯器環(huán)境的內(nèi)
    發(fā)表于 07-14 08:13

    提高單片機(jī)編程水平的方法

    大家好,我是無際,無實(shí)戰(zhàn)不理論,下面是我從事單片機(jī)編程10年的終極程序。對(duì)于怎么提高單片機(jī)編程能力,作為一個(gè)過來人,我感觸很深!工作的前3,4年,做過一些產(chǎn)品,自以為自己
    發(fā)表于 12-03 07:21

    什么是狀態(tài)機(jī)?狀態(tài)機(jī)的三種實(shí)現(xiàn)方法

    有沒有這樣一種感覺,就是感覺自己玩單片機(jī)還可以,各個(gè)功能模塊也都會(huì)驅(qū)動(dòng),但是如果讓你完整的寫一套代碼,卻無邏輯與框架可言,上來就是開始寫!東抄抄寫抄抄。說明編程還處于比較低的水平,那么如何才能
    發(fā)表于 12-22 06:51

    怎么快速提升LabVIEW編程水平

    怎么快速提升LabVIEW編程水平?
    發(fā)表于 03-17 14:33

    如何成為一名優(yōu)秀的嵌入式工程師?

    編程方法和技巧,同時(shí)也可以幫助你提高自己編程水平。 10.不斷學(xué)習(xí)和實(shí)踐:嵌入式開發(fā)是一個(gè)不斷發(fā)展和變化的領(lǐng)域,因此你需要不斷學(xué)習(xí)和實(shí)踐
    發(fā)表于 11-07 15:36

    怎么提高單片機(jī)編程水平?

    大家好,我是無際,無實(shí)戰(zhàn)不理論,下面是我從事單片機(jī)編程10年的終極程序。對(duì)于怎么提高單片機(jī)編程能力,作為一個(gè)過來人,我感觸很深!工作的前3,4年,做過一些產(chǎn)品,自以為自己
    發(fā)表于 11-23 17:51 ?8次下載
    怎么<b class='flag-5'>提高</b>單片機(jī)<b class='flag-5'>編程</b><b class='flag-5'>水平</b>?

    嵌入式之狀態(tài)機(jī)編程

    ,那么如何才能提高自己編程水平呢?學(xué)會(huì)一種好的編程框架或者一種編程思想,可能會(huì)受用終生!比如模
    的頭像 發(fā)表于 03-30 10:11 ?788次閱讀