學習程式設計的技巧具體有哪些
學習程式設計的小夥伴越來越多,那麼?為了幫助大家更好的學習程式設計,以下是小編分享給大家的學習程式設計的技巧及總結,希望可以幫到你!
學習程式設計的技巧及總結
讀>寫程式碼>讀>寫程式碼***日復一日***
關於如何高效學習程式設計我要給出的第一條建議是在閱讀程式碼和編寫程式碼之間迴圈往復。閱讀程式碼***書籍,部落格文章,開原始碼***將幫助你檢視解決方案,瞭解最佳做法,並大致瞭解語言或系統。但是在你這樣做之後,你需要自己實際去寫程式碼。可以是任何東西。可以是小的編碼練習或業餘專案,但確保你能將之付諸於實踐,並用某種方式使用你學到的東西。如果你不這樣做,那麼你會發現自己面對編輯器會無所適從無從下手。
這方面的訣竅是讓自己感到不舒服。這是相當痛苦的,但就應該這樣。編碼遵循80/20規則。花80%的時間在20%的程式碼或20%你所學的東西上。習慣於這種不舒服的感覺並克服它是關鍵。
這個迭代週期不應該以周為週期或以月為週期發生,而是應該以日為週期。知識等待使用的時間越久,知識這把斧頭就越鈍。等待學習新知識的時間越長,你就越難以將其融入到程式碼中。
我推薦閱讀關於通用程式設計主題的網站是lobste.rs。上面有許多關於許多程式設計主題的文章。另一個好的網站是Hacker News,但網站時常偏離話題。
不要陷入僵局。請求幫忙
我最大的錯誤是在學習程式設計陷入僵局的時候用了太長時間。在被卡住時,我會花很多時間在一些愚蠢的東西或一些我根本上不明白的東西上。有時候我需要花費好幾天時間才能完成這些工作,而原本我可以用這些時間做更多的事情和學習更多的東西,如果我能找到更好的解決方法的話。卡在一個東西上面超過一個小時基本上就是在浪費時間了。
我推薦三件事情以避免僵局。第一是試著總是閱讀更多關於你使用的技術,並總體掌握正在發生什麼。通常,當你陷入困境時,意味著你對需要澄清的事情做出了不正確的假設。第二是諮詢網際網路。這一點很顯然,但依然值得一提。在網上查詢並詢問有過這個問題的人是一個非常重要的技能。Stackoverflow可以說是網際網路上最好的網站。不要害怕在那裡問自己的問題。通常,只要盡力正確地闡述你的問題就OK了。我真的希望以前我能多問些問題,但總是因為害怕會顯得愚蠢而止步。我的第三個建議是向你認識的人請求幫助。通常,你或許已經理解了技術,而且有了問題,但是你可能需要更高層次的上下文才能真正解開謎團。不要膽怯,大著膽子上前去問吧。
例如,當學習Docker時,我花費了大量的時間從頭開始重新構建影象。我從根本上不明白docker快取,並用20分鐘時間來等待單個更改到Dockerfile通過。我可能花了8個小時就用在等待構建上。如果我讀過更多關於Docker或問一個知道的人,那麼可能我早就搞明白了,還可以在更短的時間內學到更多。
為專案而工作
在我的經驗中,沒有什麼可以與工作於自己的專案以學習程式設計更有用的了。除了一些例外,我所知道的所有真正優秀的程式設計師都有一個習慣就是工作於業餘專案***這也可能發生在工作中!***。有了一個點子並試圖實現這個點子是非常具有挑戰性的。它需要很強的自律心。但是,通過嘗試實際做一件事情,你可以學到如何分解問題並應用技術。你面對的各種問題,以及你如何解決它們才真正是所謂的程式設計。知道程式語言的每一個古怪細節的確是有幫助的,但它只會讓你越來越落伍。此外,想要完成專案的驅動力是繼續學習的動力。從業餘專案獲得的滿足感遠遠超過你在抽象中學習東西的滿足感。
我對於選擇業餘專案的建議是,選擇你感興趣同時你也有想法如何實現的東西。能夠在開始之前表達實現總是有助於保持我的動力。在此旅途之中你一定會學到很多!
認識到深入鑽研和搬運工之間的區別。相應地選擇。
有兩種型別的程式設計師:完美主義者和搬運工。有些人希望一切都是正確的,他們希望完美,他們希望遵循所有的最佳實踐,並寫出漂亮的優雅程式碼。他們想要理解每一行程式碼。有別於那些不管三七二十一,只要自己的程式碼能工作即可,即使對程式碼庫有損害的人。平衡這兩種技能是非常重要的。有時你應該深入鑽研一個問題或專案,看看發生了什麼。有時你應該讓它工作即可,即使你不知道發生了什麼。
每當你花費太多時間在某個東西上時,那就問問自己:我應該採取哪種方法?在大多數情況下,你會想取中間值。你想提供一個好的、堅實的解決方案,同時你可以自信地理解和修改,但沒有耗費荒謬的時間。隨著你作為開發人員的成長,你會更好地明白什麼時候就此離開就可以,以及什麼時候需要以某些方式完成。
就個人而言,我喜歡我的專案80%完美。如果你的專案是絕對100%完美,沒有一行程式碼讓你覺得尷尬,那麼很有可能你已經花了太多的時間。
與其他程式設計師交談
學習程式設計的一個很好的方法就是和其他的程式設計師交談。不必談論任何特定的內容。可以是你正在學習的東西,可以是你認為很酷的東西,可以是你正在工作的東西,皆可。你會發現很多程式設計師並不喜歡只是聊程式設計。這樣做可能會讓你學到很多關於庫,服務,程式語言和模式方面的知識。但是,最重要的是,你將瞭解到其他人是如何看待程式設計的。你會發現,你認為理所當然或從來沒有考慮的事情在人與人之間是非常不同的。
學習程式設計的建議
1、不要僅僅讀書。
學習程式設計的最好方式是通過讀書。這種方式是簡單的,花幾個小時去看有關語法內容。但是程式語言向人類語言一樣,為了理解它們我們需要去使用它們。
2、試著開始做些簡單的專案。
如果你走的是HTML / CSS的路線,嘗試玩,用javascript實現,當你點選一些事情的時候,獲得一個簡單的Div在頁面移動。然後用你的方式去做些更加複雜的。舉個例子,用HTML form元素寫一個簡單的todo 列表。你必須學習DOM操作去正確地處理使用者與頁面的互動。
在斯坦福大學,他們用遊戲開始教CS課程。盡力去建立一個遊戲使用JS。或者僅僅是在命令提示符下使用Ruby或者Python。
推薦一個網站叫 Codecademy,上面有十分不錯的javascript課程。
3、你需要專注。
這裡列出一些新手一直在犯的大錯誤:
頻繁的切換語言和框架,或者自以為自己會精通所有的人
用奇特的工具個性化他們的開發環境而不是更過常規的工具,當和別人協作的時候可以可靠地使用。
嘗試學習Docker這樣的工具,因為它們是新的和令人興奮的,即使他們還沒有掌握更多的基礎技術。
學習PLC程式設計技巧
一、多收集程式範例、增加程式設計經驗
在PLC的程式設計方法中,經驗法一直受到許多從業者的青睞,並且在經驗設計法中資料收集顯得尤為重要。首先收集典型程式樣例,程式最好有較完整的組成部分:控制任務、I/O分配、硬體接線圖、完整的程式及註釋。其次要讀懂程式,從而分解出程式中用於完成不同任務的組成部分,對於各組成部分中獨立完成某一特定功能的子程式或者中斷程式應及時收藏到程式庫。以便在以後的程式設計過程中碰到實現類似控制任務時,節約程式設計時間、提高程式除錯成功率。再次還需要記錄程式閃光點,諸如程式設計者巧妙的思路、程式結構、應用指令的使用。尤其是應用指令的使用,能夠大大的縮短程式長度,減少記憶體容量,降低系統成本。最後對程式做功能擴充套件性的設計、除錯,並對全過程加以詳細記錄、再加以總結。通過以上過程就能夠有效消化這些程式範例,使其融入到自己以後的程式設計過程中。經過一段時間的資料收集、理解、消化後,逐步確立適合自己的程式設計方法。
二、熟練使用軟體包
以學習三菱產品為例來介紹軟體包的使用。三菱軟體包由兩個部分組成,程式設計軟體GXDeveloperVersion8C和模擬軟體GXSimulator6C。程式設計軟體GXDeveloperVersion8C為設計者提供了程式設計環境。設計者應熟讀程式設計手冊、熟練程式的編輯技巧,使得自己的設計方案得以展現。設計好的程式能否滿足控制任務,就必須進行除錯,傳統的除錯方式離不開程式設計控制器CPU,必要時還需要另外準備輸入輸出模組、特殊功能模組和外部機器等。模擬軟體GXSimulator可提供一個虛擬的實驗平臺。GXSimulator是在Windows上執行的軟元件包,在安裝有GXDeveloper的計算機內追加安裝GXSimulator,就能夠實現不線上時的除錯。不線上除錯功能內包括軟元件的監視測試、外部機器的I/O的模擬操作等。對於個人學習來說,沒有實驗條件,模擬軟體能夠在個人計算機上進行順控程式的開發和除錯。使用者通過程式不斷的模擬除錯,慢慢領會程式設計心得,從而增加程式設計經驗。
三、特殊功能模組
在學習過程中,大部分學生將學習的重心放在了軟體程式設計上,而現代工業控制給PLC提出了許多新的課題,如果用通用I/O模組來解決,在硬體方面費用太高,在軟體方面程式設計相當麻煩,某些控制任務甚至無法用通用I/O模組來完成。因此,學習PLC的特殊功能模組顯得尤為重要。這些特殊功能模組有模擬量輸入輸出模組、高速計數模組和運動控制模組等。這些特殊功能模組PLC廠家都給出了詳細的使用手冊,使用者可以通過仔細研讀使用手冊來完成特殊功能的實現,使得軟體程式設計簡化,降低了經濟成本。
四、人機介面
連線可編程式控制器,利用顯示屏顯示,通過輸入單元***如觸控式螢幕、鍵盤、滑鼠等***寫入工作引數或輸入操作命令,實現人與機器資訊互動的數字裝置稱為人機介面,俗稱觸控式螢幕。觸控式螢幕以其易於使用、堅固耐用、反應速度快、節省空間等優點,使得系統設計師們越來越多的感到使用觸控式螢幕的確具有相當大的優越性。觸控式螢幕由硬體和軟體兩部分組成。利用軟體可以完成使用者介面的設計,結合PLC的程式設計極大的簡化了計算機的使用,即使是對計算機一無所知的人,對不懂PLC程式程式設計的操作人員,也能夠按控制要求設定控制系統引數、生產配方儲存、裝置生產資料記錄等操作。觸控式螢幕的學習可以按如下的步驟進行。首先針對某一系列觸控式螢幕仔細閱讀其畫面設計手冊進行使用者畫面設計;接著設計觸控式螢幕畫面操作實現對應的PLC程式;最後開啟觸控式螢幕、PLC程式設計模擬軟體進行模擬除錯。
五、掌握三種流派主流產品
目前,世界上有200多個廠家生產PLC。大體可以按地域分成主要的三個流派:一個流派是日本產品,以三菱FX系列小型PLC為代表;一個流派是美國產品,以AB公司的PLC系列中型PLC為代表;還有一個流派是歐洲產品,德國西門子的S7系列大型PLC為代表。不同型號的PLC產品具有不同的特色,不僅表現在特殊複雜的功能等方面,就是在程式語言、程式的組織等方面也存在著較大的差異。掌握所有的PLC產品顯然不現實,也沒有必要。在熟練掌握一種PLC產品的基礎上,有意識地在其他主要流派中選擇最有代表性的產品,採用對比的學習方法進行相對深入的研究。這樣在以後的工作、學習和開發研究中遇到其它的機型時,就能夠做到觸類旁通了。
六、充分利用網路資源,掌握PLC應用及發展的最新資訊
PLC產品更新換代的速度很快,若想及時掌握PLC應用及發展的最新資訊,就要充分利用網際網路為我們提供的學習平臺,方便地、快捷地、經濟地掌握PLC的最新動態。尤其是一些網路上的專業論壇能夠為我們提供了較高水平的交流平臺,大量的學習資料、使用手冊、軟體功能的更新,使得不同階段的學習者受益匪淺。總之,PLC入門容易,真正掌握可程式設計控制器的程式設計方法,能夠順利設計出滿足生產任務的要求,同時程式做到簡潔、易懂,設計者就必須深入學習PLC技術,學習者可以通過上述介紹的方法不斷地充電,掌握PLC應用及發展的最新資訊,在不斷的模擬除錯過程中逐漸形成自己的程式設計習慣。
1.各學科學習方法總結
2.提高學習效率的10種方法
3.有效學習的十大方法
4.初學者必學電腦小技巧
5.學好語文的六種技巧
學生應該如何有效的學習地理