一次編程大作業的心得

來源:互聯網
上載者:User

前幾天(準確說從前兩個星期就斷斷續續開始了,只是前幾天才正式編碼)完成了網路程式設計的大作業:一個即時通訊程式。居然有3天時間在debug。


編程的過程中被bug折磨的內分泌失調。使我不得不總結一下:

1.在動手寫代碼之前應該規劃一下程式的架構。思路清楚之後才開始敲代碼。要不後面會反覆修改,勞神傷力。

2.具體到通訊程式在寫代碼之前要約定好通訊協定,通訊的資料類型要約定好,兩邊都能支援的資料類型才能用。

3.申請的記憶體最好先清零,用bzero函數。

4.儘早掌握debug工具的使用。不過臨時學也能用上,只是費時間又分神。

5.專註才有效率。

6.一段時間不編程就手生。各種初學者的錯誤都會犯。

7.不要假設某個地方一定不會有bug。你調試了半天沒找到錯誤出處,說不定bug就在你認為肯定沒有錯誤的地方。

8.GDB確實很實用,能快速發現錯誤的地方。用了之後debug快多了。

9.某些工具不會用,可以請教旁人,這樣比自己探索快很多。比如這次花了半天時間弄glade都沒摸到門道,同學主動過來教我,立馬就有感覺了。雖然他沒用過glade,不過他用java和C#做過介面。


貌似這次用C++程式開發伺服器端程式,居然比用C開發用戶端程式簡單一些,花的精力明顯少很多。


不過這次除了教訓還是有點收穫的

1.學會了一點點用GTK做介面。

2.學會了一點點makefile的編寫。

3.學會了一點點gdb的使用。

4.接觸了定時器,多線程,通訊端。

5.第一次按照比較真實的需求封裝一個C++類。


打算寒假看《軟體調試的藝術》和《Debug Hacks》。


有個大的遺憾:為了偵錯工具沒去考六級,只有明年最後一次機會再考了。不過就是去也很可能過不了,因為我什麼都沒準備。上次裸考也是失敗了。這可能是我的性格缺陷了,忙於一件事就不想做任何其他事,哪怕很重要。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.