怎么才能正確學(xué)好編程語言
目前選擇IT行業(yè)的人越來越多,尤其是年輕人和在校大學(xué)生,都希望通過學(xué)習(xí)編程,找一份不錯的工作,獲得一份較高的薪水。那么怎么才能正確學(xué)好編程語言?以下是學(xué)習(xí)啦小編分享給大家的學(xué)好編程語言的方法,希望可以幫到你!
學(xué)好編程語言的方法
1、編程需要堅強的毅力和足夠的耐心
有些人把編程看作一項冗長而枯燥的工作;有些人把編程看作一項趣味的智力游戲。如果你是前者,強烈建議你遠(yuǎn)離這份工作。畢竟編程工作是對人的毅力和耐心的挑戰(zhàn)。我所在實驗室中,很多學(xué)生看到我編程序就會驚訝于我面對這一堆堆符號所表現(xiàn)出的專注。其實,這是興趣使然。興趣使我具備了足夠的毅力和耐心。經(jīng)過無數(shù)次失敗后,當(dāng)看到一個個符號按我的思路整齊的排列,PLC按我的要求有條不紊的運行時,興趣得到了極大的滿足,如同打通了一個游戲的關(guān)口。所以,我告訴這些學(xué)生:你們看到的是一堆枯燥怪異的符號,我看到的卻是一群熱情奔放的舞者,而我則是她們的導(dǎo)演。
2、編程需要敢于實踐的信心
我曾經(jīng)教過一個學(xué)生學(xué)AutoCAD,我對她的唯一要求就是實踐。我告訴她:你隨便怎么操作,大不了一張圖重畫;最壞的結(jié)果是系統(tǒng)崩潰,沒關(guān)系,系統(tǒng)重做,再來;只要電腦沒被砸了,怎么都行。兩年后,我再看到她做的CAD圖紙,也自嘆不如。
同樣道理,只有不斷地在PLC上運行這些指令,觀察運行的結(jié)果,才能弄清PLC指令的作用。很多初學(xué)者對PLC一臉的迷茫,往往是出于一種畏懼,擔(dān)心損壞設(shè)備。而這些畏懼是沒有任何道理的。仔細(xì)的閱讀手冊是非常重要的,但是僅靠讀書是成不了一個工程師的。更何況手冊上的內(nèi)容并非面面俱到。我在接觸到那些不熟悉的指令時,喜歡單獨編一個小程序,讓PLC運行。然后逐個修改條件,觀察運行的結(jié)果(MicroWin為用戶提供了非常好的監(jiān)控手段),反過來再重新理解手冊的描述,這樣就可以非常直觀的理解這些指令的作用和使用方法。不必?fù)?dān)心自己寫的程序會有什么問題,會影響PLC的正常工作。程序有沒有問題,只有讓PLC運行了才能發(fā)現(xiàn)。而發(fā)現(xiàn)問題并解決問題就是對自己能力的提高。撇開硬件操作不談,單就軟件來說,我還真沒有遇到過由于軟件問題而損壞PLC的事。在這里不必?fù)?dān)心繼電器電路接錯線可能造成的后果。所以,大膽的實踐是PLC編程的必由之路。
當(dāng)然,大膽實踐并不是野蠻操作,而是必須遵循必要的規(guī)范。還有一個要注意的,在程序未經(jīng)可靠性證實之前,千萬不要掛接負(fù)載,以免造成不必要的損失。數(shù)字量的輸出有LED顯示;而模擬量處理可以采用一些硬件或軟件模擬手段來解決。
3、編程需要有縝密的邏輯思維
編程本身就是一種邏輯思維過程。在高級語言中,使用最多的是ifthen else、select這些條件判別語句,這就是邏輯中的因果關(guān)系。PLC程序就是由這些因果關(guān)系組成的:判別條件是否成立,進而決定執(zhí)行相應(yīng)的指令。最初的PLC是用來替代繼電器邏輯電路的,所以繼承了繼電器電路以觸點作為觸發(fā)條件的描述方式。在PLC中,以虛擬觸點代替了繼電器的金屬觸點,而繼電器電路所表達的邏輯關(guān)系還是被完整的保留下來。即使引入了繼電器電路難以勝任的數(shù)值處理過程,PLC從根本上還是在執(zhí)行一個個因果關(guān)系。所以,理順對象的各個事件之間的邏輯關(guān)系,是編程之前必須精心做好的準(zhǔn)備工作。我在接到一項任務(wù)后,第一件事就是整理出一份邏輯關(guān)系圖,與用戶反復(fù)商討,取得用戶的認(rèn)可,然后才真正進入程序的編寫過程。
4、不可或缺的相關(guān)知識
PLC的程序是直接作用于對象的具體工藝過程,那么對對象具體工藝過程的理解是非常重要的的。我在與用戶的交流過程中,會用我所掌握的UnitOperation的知識分析用戶的工藝過程,協(xié)助用戶整理過程控制中的各個邏輯關(guān)系,甚至包括各種儀表、硬件的配置。這得益于我原本所學(xué)的專業(yè)。當(dāng)然,不能要求所有搞PLC程序的工程師都有我這樣的經(jīng)歷。但是有兩門知識卻是不可或缺的:一是過程儀表的硬件知識,包括傳感器、變送器(二次儀表)和PLC本身,這是構(gòu)建控制系統(tǒng)的基礎(chǔ);二是過程控制理論,包括各種控制模型的原理和應(yīng)用,其中最重要的是二位調(diào)節(jié)和PID調(diào)節(jié)模型。PID調(diào)節(jié)是目前用得最廣泛的過程控制手段,且變化多端。學(xué)習(xí)PID最好的方法就是讀書。幾乎所有講解過程控制的書籍都有關(guān)于PID的內(nèi)容,多讀基本相關(guān)的書籍對理解PID是很有益處的。我發(fā)現(xiàn)不少網(wǎng)友在進入PLC領(lǐng)域時,缺乏這些相關(guān)知識。這并不可怕;可怕的是當(dāng)事者不能靜下心來彌補知識的缺陷。我們不要怪罪學(xué)校沒有教授這些內(nèi)容,而是要注重自己如何去學(xué)習(xí)這些知識。工作中遇到的許多問題是學(xué)校里沒講過的,這不能成為我們拒絕工作的理由,而應(yīng)該以積極的態(tài)度去應(yīng)對這些問題。我的體會是,為了解決工作中的問題而學(xué)習(xí)的知識,比課堂上學(xué)的東西更容易記住。
5、養(yǎng)成良好的編程習(xí)慣
每個人編程都會有不同的習(xí)慣和特點,不能強求一致。但是一些好的習(xí)慣還是應(yīng)該為大多數(shù)人所遵循。一是理順邏輯關(guān)系、時序關(guān)系,編制程序框圖;二是合理分配主程序、子程序和中斷程序;三是合理分配寄存器,編制寄存器符號表。
PLC編程更接近于單片機,或者說PLC就是模塊化的單片機。因此PLC的很多操作都是直接針對寄存器的,如果在程序中出現(xiàn)不合理的寄存器地址重疊,一定會出現(xiàn)不可預(yù)想的后果。編制寄存器符號表不僅可以避免上述問題(MicroWin會有問題提示),而且可以使程序具備更好的可讀性。這和VB中定義變量有異曲同工之處。
VB編程中關(guān)注的是事件,不強調(diào)主程序和子程序的觀念,因為VB主程序的工作是由PC的操作系統(tǒng)完成的。PLC則不然。PLC程序是以主程序為主干的,CPU不斷的循環(huán)執(zhí)行主程序,只有觸發(fā)條件成立時才會調(diào)用子程序或中斷程序。即子程序和中斷程序所執(zhí)行的任務(wù)不是全時需要的。如果把這些任務(wù)都放在主程序中會無端增加主程序的工作量,降低程序的效率。這點和單片機的編程思路是一致的。子程序的使用可以使整個程序的邏輯更清晰。而且子程序可以分開編寫、調(diào)試,最后“安裝”到主程序上。這樣你可以一個一個解決問題。
學(xué)好編程語言的建議
1、 計算機在問題的處理方式上要求全,將所有的可能都要告訴它。人可以根據(jù)習(xí)慣忽略一些東西,但計算機不行。比如說求解一元二次方程,我們考慮問題就已經(jīng)默認(rèn)了a不等于0,更有甚者把b方減4ac也默認(rèn)大于等于零了。這是我們的習(xí)慣,既然有解,我們一般習(xí)慣上就把它定為實數(shù)解,所以你做出來的程序一般是不考慮這兩個條件的,但是計算機不行,計算機是有名的弱智。計算機沒有象人一樣的智能處理能力,它是人忠實的信徒,不管你怎么想,它都會執(zhí)行你的命令。由于你的習(xí)慣,導(dǎo)致一些別有用心的人或者無意犯錯的人來犯錯誤,致使計算機有時無所適從。很疲憊,甚至崩潰,報錯,造成你的程序是不成功的,所以你感覺很難。
2、 計算機要求程序的描述精確,無二義性。人的語言有很強的隨機性和二義性。我們平時說話時,有時是一些招呼,有時說話的邏輯性可以不太清楚,話既可以表達這樣的意思,也可以表達那樣的意思,人可以根據(jù)環(huán)境和對方想表達的含義進行分析,最終得到正確的結(jié)果,但是計算機很弱智,雖然它很聽話,但是他不能理解你表達的思想,只會按你交給的指令執(zhí)行,這樣導(dǎo)致執(zhí)行時報警和出錯。
3、 計算機編程是要求有很強的全局性和邏輯性,不存在起伏的問題。人的思維有很強的活躍期和蟄伏期,計算機不會,它隨時待命。人在考慮問題時,有很多盡興的東西,但這不是處理問題的整體,而是一部分,所以就出現(xiàn)做完一段代碼后,就不愿意再寫,或感覺很吃力,所以感覺很難。
計算機要求它的主人,考慮問題要全面,所有可能的情況及處理都要告訴它,要求學(xué)會沉穩(wěn),心態(tài)要穩(wěn)定,要求交流的語句一定要明了含義單一。
學(xué)好編程語言的技巧
1、 好好理解一下變量和函數(shù)的概念,至少要重新回頭看看初等數(shù)學(xué)。這是基礎(chǔ),否則就會先天不足,你學(xué)的再好,也成不了大氣候。
2、 平衡心態(tài),雖然不能做到“不以物喜,不以己悲”的水平,但至少不要浮躁,不要急于求成,欲速則不達。
3、 培養(yǎng)自身的全局意識,既能小無內(nèi),也能大無外,才行。
4、 嚴(yán)格按照程序設(shè)計過程設(shè)計程序,不要跳脫,天馬行空,沒有規(guī)矩是不成方圓的。
5、 努力提高自身的綜合素質(zhì)。程序是人思維的表達形式,是人處理問題思路和語言的結(jié)合體。你對客觀看成到什么程度和你掌握的知識成正比。如果你對處理的問題不理解,不會處理,你怎么也寫不出程序。
6、 學(xué)會交流,多交流,相互補益,同時團隊合作也是很重要的。
猜你喜歡: