游戲編程的學(xué)習(xí)方法有哪些
游戲編程的學(xué)習(xí)方法有哪些
游戲在當今社會越來越受人們的歡迎,所以游戲編程變成一種新興的職業(yè),很多人想要加入這一行業(yè),但是學(xué)習(xí)游戲編程沒有那么簡單,為此,以下是學(xué)習(xí)啦小編分享給大家的游戲編程的學(xué)習(xí)方法,希望可以幫到你!
游戲編程的學(xué)習(xí)方法
一、多收集程序范例、增加編程經(jīng)驗
在PLC的編程方法中,經(jīng)驗法一直受到許多從業(yè)者的青睞,并且在經(jīng)驗設(shè)計法中資料收集顯得尤為重要。首先收集典型程序樣例,程序最好有較完整的組成部分:控制任務(wù)、I/O分配、硬件接線圖、完整的程序及注釋。其次要讀懂程序,從而分解出程序中用于完成不同任務(wù)的組成部分,對于各組成部分中獨立完成某一特定功能的子程序或者中斷程序應(yīng)及時收藏到程序庫。以便在以后的編程過程中碰到實現(xiàn)類似控制任務(wù)時,節(jié)約程序設(shè)計時間、提高程序調(diào)試成功率。再次還需要記錄程序閃光點,諸如編程者巧妙的思路、程序結(jié)構(gòu)、應(yīng)用指令的使用。尤其是應(yīng)用指令的使用,能夠大大的縮短程序長度,減少內(nèi)存容量,降低系統(tǒng)成本。最后對程序做功能擴展性的設(shè)計、調(diào)試,并對全過程加以詳細記錄、再加以總結(jié)。通過以上過程就能夠有效消化這些程序范例,使其融入到自己以后的編程過程中。經(jīng)過一段時間的資料收集、理解、消化后,逐步確立適合自己的編程方法。
二、熟練使用軟件包
以學(xué)習(xí)三菱產(chǎn)品為例來介紹軟件包的使用。三菱軟件包由兩個部分組成,編程軟件GXDeveloperVersion8C和仿真軟件GXSimulator6C。編程軟件GXDeveloperVersion8C為設(shè)計者提供了編程環(huán)境。設(shè)計者應(yīng)熟讀編程手冊、熟練程序的編輯技巧,使得自己的設(shè)計方案得以展現(xiàn)。設(shè)計好的程序能否滿足控制任務(wù),就必須進行調(diào)試,傳統(tǒng)的調(diào)試方式離不開編程控制器CPU,必要時還需要另外準備輸入輸出模塊、特殊功能模塊和外部機器等。仿真軟件GXSimulator可提供一個虛擬的實驗平臺。GXSimulator是在Windows上運行的軟元件包,在安裝有GXDeveloper的計算機內(nèi)追加安裝GXSimulator,就能夠?qū)崿F(xiàn)不在線時的調(diào)試。不在線調(diào)試功能內(nèi)包括軟元件的監(jiān)視測試、外部機器的I/O的模擬操作等。對于個人學(xué)習(xí)來說,沒有實驗條件,仿真軟件能夠在個人計算機上進行順控程序的開發(fā)和調(diào)試。使用者通過程序不斷的仿真調(diào)試,慢慢領(lǐng)會程序設(shè)計心得,從而增加編程經(jīng)驗。
三、特殊功能模塊
在學(xué)習(xí)過程中,大部分學(xué)生將學(xué)習(xí)的重心放在了軟件編程上,而現(xiàn)代工業(yè)控制給PLC提出了許多新的課題,如果用通用I/O模塊來解決,在硬件方面費用太高,在軟件方面編程相當麻煩,某些控制任務(wù)甚至無法用通用I/O模塊來完成。因此,學(xué)習(xí)PLC的特殊功能模塊顯得尤為重要。這些特殊功能模塊有模擬量輸入輸出模塊、高速計數(shù)模塊和運動控制模塊等。這些特殊功能模塊PLC廠家都給出了詳細的使用手冊,用戶可以通過仔細研讀使用手冊來完成特殊功能的實現(xiàn),使得軟件編程簡化,降低了經(jīng)濟成本。
四、人機界面
連接可編程序控制器,利用顯示屏顯示,通過輸入單元(如觸摸屏、鍵盤、鼠標等)寫入工作參數(shù)或輸入操作命令,實現(xiàn)人與機器信息交互的數(shù)字設(shè)備稱為人機界面,俗稱觸摸屏。觸摸屏以其易于使用、堅固耐用、反應(yīng)速度快、節(jié)省空間等優(yōu)點,使得系統(tǒng)設(shè)計師們越來越多的感到使用觸摸屏的確具有相當大的優(yōu)越性。觸摸屏由硬件和軟件兩部分組成。利用軟件可以完成用戶界面的設(shè)計,結(jié)合PLC的程序設(shè)計極大的簡化了計算機的使用,即使是對計算機一無所知的人,對不懂PLC程序編程的操作人員,也能夠按控制要求設(shè)置控制系統(tǒng)參數(shù)、生產(chǎn)配方存儲、設(shè)備生產(chǎn)數(shù)據(jù)記錄等操作。觸摸屏的學(xué)習(xí)可以按如下的步驟進行。首先針對某一系列觸摸屏仔細閱讀其畫面設(shè)計手冊進行用戶畫面設(shè)計;接著設(shè)計觸摸屏畫面操作實現(xiàn)對應(yīng)的PLC程序;最后打開觸摸屏、PLC編程仿真軟件進行仿真調(diào)試。
游戲編程的學(xué)習(xí)建議
1.學(xué)習(xí)一門弱類型的編程語言,不要先學(xué)習(xí)那種具有強制類型的、面向?qū)ο蟮木幊陶Z言。嚴格而言,如果有人對你提到class(類)或繼承,那么你就應(yīng)該去選擇其它的途徑了。雖然我認同類和繼承相關(guān)技術(shù)是軟件開發(fā)中必不可少的,但是我強烈認為它們不應(yīng)該是初學(xué)者的選擇。
2.鑒于此,我認為JavaScript是初學(xué)者而言最理想的編程語言,因為:(a)JS解釋器在絕大部分瀏覽器上都可用,(b)它的面向?qū)ο筇匦圆⒉皇菑娭菩偷模?c)在工業(yè)界被廣泛使用(是的,即使是web之外的客戶端,即使是現(xiàn)在擔任設(shè)備工程師的我也做嵌入JavaScript的工作。)
3.說得更具體點,我建議你學(xué)習(xí)用JavaScript如何學(xué)習(xí)去下面的事,特別是以這個順序:
4.學(xué)習(xí)如何打印出一些東西,學(xué)習(xí)如何聲明和定義變量,學(xué)習(xí)基本算術(shù)運算操作(包括余數(shù)操作),學(xué)習(xí)循環(huán)(特別是for循環(huán)),學(xué)習(xí)把抽象重復(fù)的代碼寫成函數(shù),學(xué)習(xí)字符串和用循環(huán)操作字符串,學(xué)習(xí)數(shù)組和數(shù)組的循環(huán)方法(特別是foreach循環(huán)),學(xué)習(xí)創(chuàng)建和操作對象數(shù)據(jù)集。
5.記住上面的這些并每天寫一個程序來實踐,直到這些都輕而易舉地想起來。
6.學(xué)習(xí)Git的基本操作,學(xué)習(xí)通過命令行使用Git。這意味著要先學(xué)習(xí)四個Unix/Linux命令(ls,pwd,mkdir,cd)。當學(xué)習(xí)了這幾個命令,也就學(xué)會了以“樹型”或?qū)哟谓Y(jié)構(gòu)的呈現(xiàn)方式查詢文件系統(tǒng)。
7.一旦你掌握了上面的幾個Unix/Linux命令,并會從命令行進入文件系統(tǒng),你就應(yīng)該學(xué)幾個基礎(chǔ)的Git命令。主要是 git init, git status, git add and git commit。(推薦:Git 教程)
8.一旦你掌握了Git的基本操作,在學(xué)習(xí)下面的技術(shù)時將其集成到你的工作流中。
9.學(xué)習(xí)HTML基礎(chǔ),能夠憑記憶創(chuàng)建簡單的HTML頁面。學(xué)習(xí)DOM和如何理解HTML作為指定的分層樹結(jié)構(gòu)。花點時間來思考它如何關(guān)系到你在前面步驟中學(xué)到的分層文件系統(tǒng)。
10.學(xué)習(xí)CSS選擇器,了解它如何讓你選定DOM的某些部分。了解DOM元素之間的關(guān)系。了解一個DOM元素作為另一個DOM元素的父元素或子元素的含義。理解這與后代和祖先之間的關(guān)系有什么不同。記住選擇器可以讓你通過這些關(guān)系來選定某些元素。
11.學(xué)習(xí)jQuery,并主要專注于DOM的操作能力。學(xué)會用jQuery對DOM插入或刪除元素,實踐可視化如何影響用DOM定義的樹型結(jié)構(gòu)。
12.實踐jQuery中的事件處理和DOM操作(比如,實踐操作DOM當用戶點擊某個東西,或在指定的時間間隔)。
13.多練習(xí)JavaScript對象,并把它們當作可變的聚合器。學(xué)習(xí)如何用JavaScript來表示更復(fù)雜的數(shù)據(jù)而不是基本數(shù)據(jù)類型。學(xué)會應(yīng)用并操作這些數(shù)據(jù)結(jié)構(gòu)。理解并定義JSON、理解它如何與JavaScript對象相關(guān)聯(lián)。
14.學(xué)會使用jQuery的getJSON函數(shù)從文件中獲取數(shù)據(jù)到JavaScript對象中。使用類似的技術(shù),用一個簡單的JSONP API去練習(xí)用AJAX拉取數(shù)據(jù)。練習(xí)向DOM插入和刪除這個數(shù)據(jù)。
游戲編程的學(xué)習(xí)技巧
將其與類似的語言進行比較
當你首次觀看有關(guān)該語言的第一個教程或閱讀代碼時,請嘗試猜測該語言的每個部分將會做什么,并檢查你的判斷是否正確。 如果記筆記可以幫助你整合信息,請拿起一張紙并記下三個列表:
看起來很熟悉的東西,并且做了預(yù)期中的事
看起來很熟悉的東西,但做了意料之外的事
看起來完全是新的東西
例如,如果我用來自 Python 和 C 背景的 Rust 代碼進行此練習(xí),那么在第一個列表中,我會放上用于表示范圍的花括號,(看起來像是布爾類型的 非,但實際上是 Rust 中的宏定義)則放在第二個列表,類型簽名語法(type signature syntax)放在第三個列表。
如果你保留著初始列表的副本,一旦你更熟練,可使用它通過語言反思你的進展,并提醒自己在嘗試向其他人講授該語言時,有哪些看起來不熟悉的概念。
閱讀語言的官方文檔
如果希望在使用之前吸收大量信息,從閱讀語言的參考資料中可能會受益。
不用擔心它們會對你催眠,參考文獻通常是用于查找使用,而不是用來記憶。
使用互聯(lián)網(wǎng)搜索
搜索網(wǎng)絡(luò)是一個很好的方式,可提供有關(guān)特定錯誤和一般最佳做法的信息。當收到錯誤信息時,應(yīng)搜索信息中看起來是錯誤的獨一無二的部分,但不是代碼唯一的部分。
例如,如果錯誤提示 "Error on line 53: Invalid argument exception(錯誤在第 53 行:無效的參數(shù)異常)",以語言名稱和字符串 “Invalid argument exception” 這樣的組合搜索,以找到最佳的結(jié)果。
記住要將錯誤信息中的所有引用內(nèi)容都包含在內(nèi)。
還可以在網(wǎng)絡(luò)中搜索有關(guān)解決語言中特定問題的最佳做法的博文。
評估搜索結(jié)果中顯示的博客帖子的質(zhì)量和決定認真采用他們的建議時,請查看作者的公共代碼組合以及發(fā)布日期。
與社區(qū)接觸
雖然博客和新聞文章具有大量有用的信息,但是你嘗試編寫的特定代碼片段總會有些微妙之處。不要害怕在郵件列表中發(fā)帖,或加入 IRC 和 Slack 頻道以尋求幫助。
要提出有幫助的回復(fù)的問題,請確保在正確的地方提問。許多語言都有 “初學(xué)者” 郵件列表或聊天頻道,專門針對可能會頻繁詢問的問題而建立。
當提出問題時,請務(wù)必先總結(jié)準備做什么、已做過的東西以及發(fā)生的情況。盡量為專家提供足夠的上下文來了解問題,但不需要無關(guān)緊要的細節(jié)。
提出問題后,請務(wù)必堅持一段時間來聽取建議或會回答你的疑問可能產(chǎn)生的后續(xù)問題。
猜你喜歡: