濮阳杆衣贸易有限公司

主頁 > 知識庫 > 提高編程技能的11個(gè)建議

提高編程技能的11個(gè)建議

熱門標(biāo)簽:語音平臺系統(tǒng) 湖北穩(wěn)定外呼系統(tǒng) 滄州智能外呼系統(tǒng)收費(fèi) 醫(yī)院地圖標(biāo)注 地圖標(biāo)注和圖片標(biāo)注 洛陽便宜外呼系統(tǒng)廠家 忻州外呼系統(tǒng)接口對接 電銷機(jī)器人怎么收費(fèi) 嘟聲的電銷機(jī)器人

編程是非常酷的一件事情,但是在酷炫的背后它對很多人來說還是挺難的。很多人在學(xué)習(xí)編程之初就被困難擊敗了。

當(dāng)你不熟悉編程的時(shí)候,你可能會覺得無從下手,并且不知道如何運(yùn)用學(xué)到的知識。只要你通過了這一困難的學(xué)習(xí)階段,你就會發(fā)現(xiàn)一個(gè)全新的世界。

以下是一些能夠幫助你快速提高編程技巧的建議。

編程入門篇:

1.  多寫代碼

學(xué)習(xí)某件事情最好的辦法就是練習(xí)。你應(yīng)該花大量時(shí)間去構(gòu)建和編寫代碼除非你認(rèn)為練習(xí)對你的幫助不大。你可以從寫一些基礎(chǔ)知識相關(guān)的簡單程序開始。

2.  參與不同類型的項(xiàng)目

當(dāng)你對某種開發(fā)語言非常熟悉之后,你應(yīng)該開始做一些正事了。這樣做能幫你對那種開發(fā)語言的性能有個(gè)全面的理解,同時(shí)也能推動(dòng)你去學(xué)習(xí)與這門語言相關(guān)的一些東西。過了段時(shí)間你會發(fā)現(xiàn)你經(jīng)常用類似的方法去解決類似的問題,將很難從固有思維中跳出來去學(xué)習(xí)新的技能。

3.  精通一到兩門你使用的語言

讀一兩本關(guān)于這門語言的好書。重點(diǎn)掌握這門語言的先進(jìn)開發(fā)理論知識,并且對它的核心和語言庫足夠了解。確保你所使用的語言中至少有一種腳本語言。


4.  開始閱讀


盡可能的多讀書。書能夠幫你系統(tǒng)的學(xué)習(xí)一門語言,并且能夠帶你了解這門語言的各個(gè)方面。對于初學(xué)者來說更應(yīng)該多讀書。


5.  加入討論


當(dāng)和別人討論的時(shí)候,你會產(chǎn)生一些以前從未出現(xiàn)過的主意或者想法。在這個(gè)過程中,你能夠從別人那里學(xué)到很多,同時(shí)這也是一次機(jī)會,通過分享你關(guān)于編程的看法檢查你到底對于這門語言掌握了多少。


6.  通讀公司內(nèi)部的技術(shù)和培訓(xùn)資料


比如說,谷歌有很多的代碼實(shí)驗(yàn)室,有著幾十年經(jīng)驗(yàn)的大牛們用各種語言寫出來的最好的實(shí)踐在實(shí)驗(yàn)室里用來做核心培訓(xùn)和高質(zhì)量的指導(dǎo)。如果你公司沒有類似的資源,谷歌的開源了一些他們的指南:https://code.google.com/p/google-styleguide/


7.  寫博客


當(dāng)你學(xué)習(xí)編程時(shí),你會遇到各種問題,并且想盡辦法去解決它們。你可以在博客中記錄下你解決問題的過程和你從中學(xué)到了什么。其它人看到你的文章后,也能從中獲益。同時(shí),你還能和志同道合的人交上朋友。


至于花在學(xué)習(xí)編程上的時(shí)間,剛開始你應(yīng)該擠出20%的個(gè)人時(shí)間致力于提高個(gè)人開發(fā)能力。如果可能的話,最好是每天一兩個(gè)小時(shí)而不是一個(gè)禮拜一天,因?yàn)檫@樣你能通過日常習(xí)慣去提高你的能力。最初的時(shí)候效果可能不明顯(當(dāng)然如果你因?yàn)樯暇W(wǎng)或者其他事情分心的話是沒效果的),但是這樣做的目的是讓你在長期的編程學(xué)習(xí)中有更高的效率。

編程提高篇:

1.首先仔細(xì)分析問題

2.接著好好想想如何解決這個(gè)問題

3.收集整理所有需求。

花點(diǎn)時(shí)間將最終產(chǎn)品要實(shí)現(xiàn)的目標(biāo)寫下來,并且明確哪些是我們的目標(biāo)用戶群。如果這一步能做好的話,將會給后面節(jié)約大量的時(shí)間,正所謂磨刀不誤砍柴工。

4.寫一個(gè)全面的實(shí)施計(jì)劃(或模型)。

如果是個(gè)小項(xiàng)目,這一步出來的可能只是一個(gè)基本的流程或者一個(gè)簡單的等式。

如果是個(gè)比較大的項(xiàng)目,這一步有助于我們將它切割成幾個(gè)模塊,然后再按下面的問題思考:

各個(gè)模塊需要執(zhí)行什么任務(wù)

模塊之間如何傳遞數(shù)據(jù)

如何調(diào)用模塊中的數(shù)據(jù)

雖然比起直接入手去寫代碼,收集和規(guī)劃需求又枯燥又無趣,但是如果這一點(diǎn)沒有做好,后面的調(diào)試工作就會特別繁瑣。如果我們能花點(diǎn)時(shí)間,設(shè)計(jì)出一個(gè)正確的程序流程和結(jié)構(gòu),那么我們其實(shí)在寫第一行代碼之前就相當(dāng)于已經(jīng)成功了一半。

5.注釋我們的代碼。

如果你認(rèn)為你的代碼可能需要做個(gè)解釋,那就去注釋它。每個(gè)函數(shù)都應(yīng)該提前一兩行就先描述一下它的參數(shù)和返回結(jié)果。比起告訴你what,注釋應(yīng)該說明的是why。還有記得在更新代碼的時(shí)候也要更新注釋。

6.使用統(tǒng)一的命名規(guī)則定義變量。

這將有助于我們追蹤各個(gè)類型的變量,并且對每個(gè)變量的用途一目了然。這一條的好處可不僅僅是方便我們打X = A+ B * C這么簡單,它會讓我們的代碼更便于調(diào)試和維護(hù)。目前普遍受歡迎的一種命名方法是匈牙利命名法,它采用的是類型前綴于變量的做法。例如,對于整體變量,我們可以使用intRowCounter,字符串就是strUserName。無論你的命名規(guī)則是什么都沒關(guān)系,只要保持一貫,并能簡單描述變量就行。

7.格式化編輯代碼,代碼結(jié)構(gòu)可視化。

例如,碰到條件語句(if、else等)和循環(huán)語句(for、while等)縮進(jìn)代碼。還有,可以在變量名和運(yùn)算符號之間加個(gè)空格,運(yùn)算符號指的是“+”、 “-”、“*”、“/”,以及“=”(舉例,myVariable = 2 + 2)。這不但讓你的代碼更直觀更優(yōu)雅,還能使得我們的程序流程更加一目了然。

8.全面測試。

首先通過輸入我們期望的值來測試每個(gè)模塊能否獨(dú)立運(yùn)作。然后試著輸入一些可能但是很少見的值,繼續(xù)測試。這基本上能暴露所有隱藏的bug。測試也有所謂的技巧,通過練習(xí)和實(shí)踐,我們誰都可以逐步建立起適合自己的技能。測試應(yīng)包含下列情況:

極端值:正值用0和大于預(yù)期的最大值;文本用空字符串,參數(shù)用null。

無意義的值。雖然用戶不大可能會輸入亂碼,但是我們自己無論如何先測試一下為好。

不正確的值。在除法中輸入0,或者在預(yù)期是正數(shù)以及開平方根的情況下輸個(gè)負(fù)數(shù)。當(dāng)輸入類型是一個(gè)字符串的時(shí)候,輸入非數(shù)字,然后看看是否會被解析為數(shù)字值。

9.練習(xí)、練習(xí)、還是練習(xí)。

編程也會隨著時(shí)代的前行而不斷進(jìn)步。所以總有新的東西需要我們學(xué)習(xí),——甚至更加有用、更加重要——當(dāng)然,也總有一些內(nèi)容值得我們溫故而知新。

10.減少需求改變的風(fēng)險(xiǎn)。

在現(xiàn)實(shí)的工作環(huán)境中,需求總是在不斷變化的。然而,如果前期我們對需求收集得非常全面,一開始的實(shí)施計(jì)劃就很有針對性,那么后期因需求改變導(dǎo)致的計(jì)劃不周和雙方產(chǎn)生誤會的可能性就會小得多。

我們可以在開始寫代碼之前,通過展示需求文檔和實(shí)施計(jì)劃,以提高進(jìn)程的清晰度。這將有助于確保我們的計(jì)劃是真正按照客戶的要求去完成的。

如果將項(xiàng)目比作是一系列的里程碑,那么一次只要完成一個(gè)就可以了。記住,在任何特定的時(shí)刻需要考慮的東西越少,那么我們想得就越詳盡越完美。

11.由易到難,從簡入繁。

如果你的軟件復(fù)雜,那么我建議你最好先從簡單的模塊入手。例如,有這樣一個(gè)項(xiàng)目:請?jiān)O(shè)計(jì)一個(gè)程序,要求能出現(xiàn)一個(gè)跟著鼠標(biāo)方向走的漸變圖形,并且還能根據(jù)鼠標(biāo)滑動(dòng)速度改變形狀。

首先,設(shè)計(jì)一個(gè)正方形,寫一段能做到讓它跟隨鼠標(biāo)的代碼,這樣就把運(yùn)動(dòng)追蹤問題先單獨(dú)拎出來解決掉了。當(dāng)然這才是第一步。

接下來,將這個(gè)正方形的大小與鼠標(biāo)的速度相關(guān)聯(lián),即解決了形狀隨速度而變的問題。

最后,創(chuàng)建你想要的實(shí)際形狀,并把這三個(gè)組件連接在一起即可。

運(yùn)用這種方法自然而然地就編寫出來了模塊化的代碼。并且每個(gè)組件都有它自己獨(dú)立的功能。這對代碼重用是非常有用的(例如,你完全可以在其他項(xiàng)目中應(yīng)用第一步驟(用于實(shí)現(xiàn)鼠標(biāo)跟蹤)的代碼),并讓我們的程序更容易調(diào)試和維護(hù)。

標(biāo)簽:山南 定州 防城港 內(nèi)蒙古 宜賓 96 巴彥淖爾 日照

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《提高編程技能的11個(gè)建議》,本文關(guān)鍵詞  提高,編程,技能,的,11個(gè),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《提高編程技能的11個(gè)建議》相關(guān)的同類信息!
  • 本頁收集關(guān)于提高編程技能的11個(gè)建議的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    峨边| 昆明市| 武平县| 曲麻莱县| 嘉禾县| 平泉县| 泽库县| 东源县| 时尚| 满洲里市| 玉溪市| 金平| 平潭县| 永修县| 从化市| 奉贤区| 宜兴市| 姚安县| 拉萨市| 双流县| 崇州市| 大渡口区| 遂平县| 监利县| 屏南县| 修文县| 南乐县| 白山市| 鹿泉市| 广东省| 吴桥县| 辽阳县| 鹤壁市| 四子王旗| 科尔| 安吉县| 洪江市| 延庆县| 沽源县| 淳化县| 依兰县|