首頁 後端開發 php教程 程式設計師之路【上】

程式設計師之路【上】

Jul 25, 2016 am 08:52 AM

這些在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

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

php中的捲曲:如何在REST API中使用PHP捲曲擴展 php中的捲曲:如何在REST API中使用PHP捲曲擴展 Mar 14, 2025 am 11:42 AM

PHP客戶端URL(curl)擴展是開發人員的強大工具,可以與遠程服務器和REST API無縫交互。通過利用Libcurl(備受尊敬的多協議文件傳輸庫),PHP curl促進了有效的執行

在PHP API中說明JSON Web令牌(JWT)及其用例。 在PHP API中說明JSON Web令牌(JWT)及其用例。 Apr 05, 2025 am 12:04 AM

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

解釋PHP中晚期靜態結合的概念。 解釋PHP中晚期靜態結合的概念。 Mar 21, 2025 pm 01:33 PM

文章討論了PHP 5.3中介紹的PHP中的晚期靜態結合(LSB),允許靜態方法的運行時間分辨率調用以更靈活的繼承。 LSB的實用應用和潛在的觸摸

框架安全功能:防止漏洞。 框架安全功能:防止漏洞。 Mar 28, 2025 pm 05:11 PM

文章討論了框架中的基本安全功能,以防止漏洞,包括輸入驗證,身份驗證和常規更新。

如何用PHP的cURL庫發送包含JSON數據的POST請求? 如何用PHP的cURL庫發送包含JSON數據的POST請求? Apr 01, 2025 pm 03:12 PM

使用PHP的cURL庫發送JSON數據在PHP開發中,經常需要與外部API進行交互,其中一種常見的方式是使用cURL庫發送POST�...

自定義/擴展框架:如何添加自定義功能。 自定義/擴展框架:如何添加自定義功能。 Mar 28, 2025 pm 05:12 PM

本文討論了將自定義功能添加到框架上,專注於理解體系結構,識別擴展點以及集成和調試的最佳實踐。

ReactPHP的非阻塞特性究竟是什麼?如何處理其阻塞I/O操作? ReactPHP的非阻塞特性究竟是什麼?如何處理其阻塞I/O操作? Apr 01, 2025 pm 03:09 PM

深入解讀ReactPHP的非阻塞特性ReactPHP的一段官方介紹引起了不少開發者的疑問:“ReactPHPisnon-blockingbydefault....

See all articles