1. 系統程序員怎樣把代碼寫得又快又好
很多初學者包括一些有經驗的程序員,在敲完代碼的最後一個字元後,馬上開始編譯和運行,迫不急待的想看到自己的工作成果。快速反饋有助於滿足自己的成就感,但是同時也會帶來一些問題:
讓編譯器幫你檢查語法錯誤可以省些時間,但程序員往往太專注這些錯誤了,以為改完這些錯誤就萬事大吉了。其實不然,很多錯誤編譯器是發現不了的,像內存錯誤和線程死鎖等等,這些錯誤可能逃過簡單的測試而遺留在代碼中,直到集成測試或者軟體發布之後才暴露出來,那時就要花更大代價去修改它們了。
修改完編譯錯誤之後就是運行程序了,運行起來有錯誤,就輪到調試器上場了。花了不少時間去調試,發現無非是些低級錯誤,或許你會自責自己粗心大意,但是下次可能還是犯同樣的錯誤。更嚴重的是這種debug&fix的方法,往往是頭痛醫頭腳痛醫腳,導致低質量的軟體。
讓編譯器幫你檢查語法錯誤,讓調試器幫你查BUG,這是天經地義的事,但這確實是又慢又爛的方法。就像你要到離家東邊1000米的地方開會,結果你往西邊走,又是坐車又是搭飛機,花了一周時間,也繞著地球轉了一周,終於到了會議室,你還大發感慨說,現代的交通工具真是發達啊。其實你往東走,走路也只要十多分鍾就到了。不管你的調試技巧有多高,都不如一次性寫好更高效。
下面是我在閱讀自己代碼時的一些方法:
檢查常見錯誤
第一遍閱讀時主要關注語法錯誤、代碼排版和命名規則等等問題,只要看不順眼就修改它們。讀完之後,你的代碼很少有低級錯誤,看起來也比較干凈清爽。第二遍游嘩重點關注常見編程錯誤,比如內存泄露和可能的越界訪問,變數沒有初始化,函數忘記返回值等等,在後面的章節中,我會介紹這些常見錯誤,避免這些錯誤可以為你省大量的時間。如果有時間,在測試完成之後,還可以考慮是否有更好的實現方法,甚至嘗試重新去實現它們。說了讀者可能不相信,在學習編程的前幾年,我經神知行常重寫整個模塊,只我覺得能做得更好,能驗證我的一些想法,或提高我的編程能力,即使連續幾天加班到晚上十一點,我也要重寫它們。
模擬計算機執行
常猛灶見錯誤是比較死的東西,按照檢查列表一條一條的做就行了。有些邏輯通常不是這么直觀的,這時可以自己模擬計算機去執行,假想你自己是計算機,讀入這些代碼時你會怎麼處理。北大青鳥認為這種方法能有效的完善我們的思路,考慮不同的輸入數據,各種邊界值,這能幫助我們想到一些沒有處理的情況,讓程序的邏輯更嚴謹。
2. 程序員如何規范代碼的編寫方法
對於每個程序員來說,養成良好大消的代碼編寫方法是非常關鍵的。在編寫代碼的過程中,每個人的方法是不同的,那麼應該如何規范自己代碼編寫的方法呢?規范編寫代碼有哪些要求呢?下面電腦培訓帶大家認識代碼編寫的方法。
一、保證代碼壓縮後不會出錯
對於大的JavaScript項目,一般來說,包含在項目中的所有JavaScript文件在產品公開時都會被壓縮。為盯仿野了正確壓縮代碼,通常需要考慮壓縮工具的必要條件,如句子用分號正常結束,中括弧結束等。因此,IT培訓發現當編寫代碼沒有按照標准進行時,在發生壓縮錯誤後再次尋找錯誤是浪費時間的。
二、保證代碼能夠通過自動格式化功能
一般情況下需要使用完善的開發工具進行自動化格式功能,這個功能能夠進行換行、縮進和空格等方法的代碼編排,並且還可以設置自己喜歡的格式。別人在閱讀你的代碼時需要使用IDE進行格式轉換,以滿足個人的閱讀風格。北京北大青鳥認為閱讀代碼能夠更加深入的了解代碼調用和細節的實現,這是簡單的文檔不能凱喊實現的。
三、使用標準的文檔注釋
這是編寫代碼中最基本的要求,能夠很好的了解代碼的提示,並且還可以利用配套的文檔工具生產其他格式讓別人閱讀。北大青鳥認為編寫完整的注釋還可以使團隊成員更容易閱讀您的代碼。通過您的參數描述,團隊成員很容易了解您想要傳遞參與實現細節和編寫的方法。
3. 現實中程序員是怎樣飛快敲代碼的
敲代碼很快有幾個條件
1.對項目代碼和結構非常熟悉,知道整個數據流的在代碼中的流動過程和變化過程。知道當前新增的代碼在整個項目處於哪個位置,對於數據會有產生什麼新的變化。這些要心理有數。也就是從架構層面去思考代碼的編寫。
2.對於需求理解的很透。這樣業務邏輯轉成代碼邏輯就不會有任何不清楚的地方。
3.已經解決了技術難點,也就是說前期測試性代碼已經寫過了弄清楚了,避免了突然出現的技術性難點
4.新增的代碼和新增的數據結構已經仔細思考過了,並設計好。也清楚引入這些新的代碼和數據結構對現有代碼的整體影響
5.異常點的位置的處理方案已經安排好了。寫代碼一部分是正常業務流程,演算法過程,但是另外一大塊就是處理各種異常。當異常出現之後,是代碼重試,報錯後忽略,還是報錯之後停止代碼,還是報錯後清理代碼並重新恢復上一個狀態,等等。這些都是要心理有數。
6.對於如何新增源代碼文件,命名函數,命名文件名,命名類名,命名變數名有一整套方案。有時候想個函數名或者變數名都要卡好幾分鍾,就不算飛快了。別笑,想個變數名,網路十來分鍾的時候多了去了。
7.外部環境已經准備好了。IDE穩定,資料庫結構穩定,數據穩定,網路穩定,訪問網頁順暢,准備好免打擾的牌子。准備好刷卡提需求的二維碼,准備好板磚和大刀,預防產品經理提需求和改需求。
4. 如何編寫代碼進行簡單的編程入門
代碼編程入門學習介紹如下所示。
1、掌握編程思想
很多人學習編程的時候一殲扮上來就閱讀大量的書籍,死記硬背各種語法,然而到最後成效並不大。如果想成為一名優秀的程序員,最重要早高的是掌握編程思想、找到編程感覺,而不是死記硬背語言本身。一名程序員的高級境界,是在反復的實踐、觀察、分析、比較、總結中潛移默化積累的。
要學會編程思想、找到編程感覺,必須從實實在在的編程實際工作中去實踐和體驗。不少朋友在學習編程時只簡單地學習語法、結構,枯燥而且目的性也不強,會大大降低初學者的興趣和學習效果。
而一般的書籍,也只從語言本身去講解語法和舉一些針對這些語法的應用例子,跟使用說明書沒有太大差別,沒有起到灌輸編程思想,培養編程感覺的作用。
2、學習C語言或者python語言
python語法更加簡單簡潔易學,而且有各種強大的庫,擴展庫,可過程可對象,如果是為了通過編程這一手段來迅速的做出有用、實用的程序和界面,可以學python。
入門是從Basic語言開始的,大概熟悉程序的基礎語法與邏輯後,進階C語言。現代很多語言都是從C語言發展而來的,所以可以以C語言做跳板進階其他面向陸改尺對象的高級語言。
3、學習JavaScript
若想要見效快的話,大家可以從JavaScript開始學起,畢竟你安裝的瀏覽器就已經自帶了語言環境了,並且JS現在基本前後通吃,你既可以寫前端界面也可以寫後端服務,是一門性價比很高的語言。
5. 如何自己編寫一個程序
編程是一項系統而繁瑣的工作,不僅需要程序員有一定的基礎,還需要良好的編程習慣和風格。良好的編程習慣和風格不僅可以使程序代碼更容易閱讀和修改,更重要的是可以使程序結構更加合理,有助於提高程序的執行效率。下面是我編程的一些經驗,供大家參考。
設計順序
我們剛開始學編程的時候,要寫一個程序,總是先做一些思路,然後邊寫代碼邊調試。這種方法一般只適用於非常小的程序。根據軟體工程的特點,按照這種方法設計所有的程序是不合理的。
其實設計過程就像我們蓋高樓一樣。首先,我們要設計圖紙,然後開始施工。因此,對於個人編寫程序,應該遵循以下步驟:
1.問題分析:通過編程的方式系統地分析我們想要解決的問題,了解程序是做什麼的,想要達到什麼樣的效果。
2.結構設計:即設計程序的整體框架,設計我們需要使用的模塊,繪制流程圖。
3.用戶界面設計:在這里,我們應該設計一個輸入輸出界面,用於與用戶進行交互。
4.代碼設計:在這一步,我們將編寫代碼。
5.調試:處理程序中正在發生或可能發生的各種錯誤。
6.維護:一般來說,維護就是升級程序,修改原來的錯誤。
對於上面的步驟,我想大部分人都認為代碼設計是最重要的,但是如果程序的結構還沒有明確,我們寫代碼的時候就會出現混亂。一個程序的性能主要取決於它的合理結構。因此,在程序設計中,我們應該盡可能地注意這一點,從而使我們的程序更加完善。
設計環境
好的編程環境可以防止我們寫程序時各種資源的無序,避免資源的流失。建議您在存放源程序的目錄下建立一個「程序」文件夾;然後用你要寫的程序名和版本名創建一個文件夾,用來存放整個源程序和各種資源;最後分別建立幾個文件夾,「文檔」:用來存放程序文檔,包括流程圖等。「資源」:用於存儲圖片、聲音、電影等資源;「調試」:用於存儲調試程序。「版本」:用於存儲最終版本的程序。
例如,如果我們要製作一個名為「english」的1.0版英語學習軟體,那麼我們的編程環境中應該存在以下文件夾:
[drive]:\?\程序 英語1 調試
[驅動器]:\?\程序 英語1 文檔
[驅動器]:\?\程序 英語1 資源
[驅動器]:\?\程序 英語1 發布
另外,最好建立一個專門的文件夾來存放各種模塊,這樣代碼就可以重用了。這樣我們每次寫程序都不用重寫所有模塊,編程速度會大大提高。
設計技巧
如果代碼寫得亂七八糟,程序就不容易被閱讀和修改。因此,編寫代碼時應注意以下幾點:
(1)注釋:雖然寫注釋需要一定的時間,但是在閱讀和修改代碼的時候會節省很多時間。所以建議你在定義函數的時候,把函數寫在函數的第一行,把函數的參數解釋在一行,在每個變數的定義語句後面給函數加註釋。
(2)變數和函數的命名:每個程序都會用到大量的變數和函數。如果隨意給變數和函數命名,每次使用時都必須在變數或函數的定義語句中找出變數和函數的數據類型和名稱,隨意命名會導致變數和函數的重復定義。
建議您使用匈牙利命名法。方法是:每個變數或函數的開頭以其數據類型的縮寫命名,然後加上代表這個變數或函數的功能的英文單詞縮寫,形成變數或函數的名稱。比如定義整數變數count進行計數,其定義語句為C c++:inti count;基本:dim icount為整數.這種定義既能有效避免變數和函數的混淆和重復定義,又能保證數據類型的匹配。
(3)控制項命名:如果在windows下編程,可能會用到很多控制項。如果不嚴格管理控制項名,會造成很大程度的混亂。因此,建議在給控制項命名時,使用控制項類型的縮寫和表示該控制項功能的英文單詞的縮寫來構成該控制項的名稱。例如,如果要命名一個要刪除的按鈕控制項,控制項名稱可以命名為cmddel。
不是每個人都能成為頂尖的程序員,但我們都在程序員的道路上不斷進步,追求更完美、更專業的程序。你不妨改革一下你的程序,你會從中感受到很多好處。