程式員之路【上】

來源:互聯網
上載者:User
這些在IT業內被無數人津津樂道的名字。在這裡,筆者從一個職業程式員的角度,想和大家談談自己的感受。為什麼要做一個程式員提到這個問題似乎會讓人覺得太簡單、太幼稚。看看現在程式員舒適的工作環境、豐厚的薪水、過著“快樂”的白領生活,一切彷彿都不言自明。其實這是只看到了程式員的一面。我們的另一面則不為福士關註:沒日沒夜的工作,通宵加班是家常便飯;整天和鍵盤打交道,把自己的這些枯燥的生活又有多少人能切身體會?沒有對軟體事業本身的執著、對原始碼近乎朝聖般的癡迷,這一切都是普通人不能忍受的。但是當你的程式完全通過了測試,成為一個合格的產品。這個時候的喜悅,又是如此?有規矩,成方圓程式開發是一件靈活性很強的工作。例如:變數I增加1,在C語言裡面可以有:I++、++I、I+=1、I=I+1等多種寫法。但是,這並不說明編程就可以隨心所欲,天馬行空。良好的編程習慣可以提高工作效率,減少不必要的失誤。尤其是對初學者來說更是要注意的是:第一點:編程的時候,首先要建立好的資料結構。編程式的時候,如果在開始資料結構設計錯誤,那麼在後來你不得不花大代價來修改程式。筆者自己就曾有過這樣的慘痛教訓:一個程式寫了2500多行,突然發現基本資料結構不合理,結果全部推翻重寫。“磨刀不誤砍柴工”第二點:代碼儘可能重用與模組化。無論是面向過程還是物件導向,代碼重用都是基本原則之一。例如:如果要畫一個青苹果和一個紅蘋果,就寫一個函數來畫蘋果,把顏色作為參數傳進去。這樣只要調用同一個函數傳遞不同參數就可以畫出不同顏色的蘋果。這樣做的好處一是程式?第三點:良好的編寫風格。一個程式,不可能是絕對完美,以後永不用修改的。既然要修改,就必然要重讀和理解原來的代碼。而良好的編程風格,可以使人更方便和迅速理解程式的結 構,從而可以最大限度地提高修改的效率。在這裡,筆者舉出一些比較好編程的風格要求:1.統一Count明顯比叫iii更容易被理解其真實的邏輯含義和資料類型。所以變數和函數名多起幾個字母,讓它有意義一點,將來理解也比較方便。2.代碼的逐層縮排格式。這幾乎已經成為一種標準,這種格式使得代碼之間的層次關係非常明顯,對於程式的邏輯理?代碼位置的有條理性。把相關功能的代碼集中起來,放在一起,這樣在以後閱讀代碼時候,可以盡量避免在不同檔案模組之間頻繁切換。由於要考不利於理解。如果迴圈的確太多、代碼太長,就應該考慮重新再劃分出更細的子函數。好的編程風格當然不止這些,這也需要在學習過程中慢慢體會。第四點:注重程式測試,注意異常處理。這往往是業餘編程愛好者和職業程式員的一個明顯的差別。業餘編程愛好者往往只注重程式可以正常運行,而職業程式員除此之外還必須關注程式在異常情況下也可正常運行,至少可以正常終止。而這是建立在對程式充份理解和測試基礎上的?千裡之行始於足下。做程式員有更多的曲折和困難。但是只要真心熱愛軟體開發,願意為之而付出,最後將使你體會到個中樂趣。來吧,還猶豫什麼,踏上這條程式員之路,昂首向前走吧!學編程是先學什嗎?對於廣大編程初學者來說,存在著這樣普遍的認識:學習程式設計選擇程式設計語言很重要,開口閉口就是VisualBasic、Visual C++、Delphi、Power Builder等一些現在比較流行的開發工具。經常看見有初學者問:我學C/C++,究竟是學VisualC++好,還是學Borland C++ Builder好呢?或者就是要求在Visual Basic和Delphi之間作出選擇。學習程式設計和學習程式設計語言究竟是怎麼一個關係?初學者究竟應該如何取捨呢?就此我們打個簡單的比方:學習程式設計就好比學習射擊,而程式設計語言就對應射擊中的*、手槍、步槍等各種槍械。學習射擊必須要選擇一種槍械,不可能沒有槍還能學好射擊的,也不可能同時學會使用所有的槍械。但是,如果掌握一種槍械的射擊,再學別的也就觸類旁通了。因為在熟悉一種槍械的同時,也學習了射擊技術本身。再學其他的,自然事半功倍。學習程式設計也是一樣,必然要從學習一門程式設計語言開始入手。同時在學習的過程中?建議:學習程式設計不必苛求一定要從某一種語言入手,可以在Visual Basic、Delphi、Borland C++ Builder或者DOS下的Pascal、Turbo C(或Borland C)中間選擇自己比較容易接受的一種進行學習。從中主要學習的是編程本身的思想,學習的是用程式設計的眼光來看待問題。或許,學習的效果不能馬上看到,但是可以學到紮實的基本功,而這對於將來的進一步發展是有很大好處的。這些基本功包括:
免費領取LAMP兄弟連原創php教程光碟片/《細說PHP》精要版,詳情諮詢官網客服:http://www.lampbrother.netPHPCMS二次開發 http://yun.itxdl.cn/online/phpcms/index.php?u=5開發 http://yun.itxdl.cn/online/weixin/index.php?u=5移動互連網伺服器端開發 http://yun.itxdl.cn/online/server/index.php?u=5Javascript課程 http://yun.itxdl.cn/online/js/index.php?u=5CTO訓練營 http://yun.itxdl.cn/online/cto/index.php?u=5
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.