首頁  >  文章  >  後端開發  >  程式設計師之路【上】

程式設計師之路【上】

WBOY
WBOY原創
2016-07-25 08:52:31814瀏覽
這些在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.net
PHPCMSPHPCMS二次開發
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。



陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn