1 學(xué)Matlab并不難,難的是學(xué)會怎么用。
2不要試圖掌握matlab的每一個(gè)功能,熟悉和你專業(yè)最相關(guān)的部分就可以了。
3 不要問:明天要交作業(yè)了,哪位大俠幫忙寫個(gè)程序吧,或初學(xué)matlab,不懂呀,大哥大姐幫忙寫個(gè)程序之類的話
不要等到要用到才去學(xué),如果你有興趣,你有時(shí)間,你可以多學(xué)些東西,說不定什么時(shí)候就用了,機(jī)會只偏愛那些有準(zhǔn)備的頭腦,到時(shí)候就不會說什么,要做東西想讓人指點(diǎn),基礎(chǔ)的東西來不及仔細(xì)看了,一寫程序嗎,低級錯(cuò)誤滿天飛。
4 不要說:不要讓我看matlab英文的幫助我看不懂--誰都是從不懂到懂的
5 不要擔(dān)心:我編程能力差,我一定用不好matlab。
6 不要只問不學(xué)
7 學(xué)maltab要有耐心
8 看到某本書中或論壇的帖子中解決問題的方法要試著解決類似的問題,要舉一反三,要學(xué)會變通
9 有了問題先自己想,察看幫助,1個(gè)小時(shí)后沒有結(jié)果再問別人 ,不要一有問題就發(fā)問,然后什么都不管了,把希望寄托在別人身上
10 學(xué)會用搜索引擎,在網(wǎng)上可以找到很多資料,有的問題一搜索就能找到的,就不要來問別人了
11要多動腦,多動手寫程序、調(diào)試,看程序時(shí)候多想幾個(gè)為什么,理解別人程序中精華的東西,多自己調(diào)調(diào)程序,可以改改程序,把知識轉(zhuǎn)成自己的,弄懂一兩個(gè)經(jīng)典例子比粗粗的看一大書要好,值得一提是不是一下子就能看懂相對比較長,比較復(fù)雜的程序的,要做的是自己慢慢去分析,利用已經(jīng)有的資料和幫助,等慢慢搞懂它,要多看幾遍,相信多看一遍你就會有一些新的認(rèn)識,一直到你已經(jīng)掌握里例子的精華。
12 多讀matlab高手寫的程序,帖子,找到一個(gè)高手,在幾個(gè)大的論壇可以搜索出一大堆的帖子,然后慢慢去看吧,從中可以學(xué)到很多東西,也許你會發(fā)現(xiàn)很多你都看不懂,這很正常,別人寫程序考慮的是能實(shí)現(xiàn)這樣的功能,運(yùn)行效率等問題,而不是考慮是不是很容易能讓別人理解,你就看你現(xiàn)在能看懂,再看些通過你斷點(diǎn)調(diào)試,查help能看明白的,看不懂的就先放下,遇到好的和看不懂,你又很挺感興趣的話題,你先收藏起來,過段時(shí)間你再回頭看看,你會發(fā)現(xiàn),每看一遍,你就會多懂一些東西,當(dāng)你第三遍甚至第四遍看同一個(gè)程序的時(shí)候,也許你就會有豁然開朗的感覺。一個(gè)比較長的程序,首先不要怕長,把它分解成一句一句,一句一句看懂它。要明白一口吃不成胖子,好東西要慢慢體會,才能領(lǐng)會。
13 電腦上復(fù)制粘貼很方便,對于別人解決的你專業(yè)上的問題,最好自己寫一遍,這樣印象深刻,對于不懂的函數(shù)用法的函數(shù),help中查查,能看懂多少算多少,對于程序斷點(diǎn)調(diào)試一遍,弄清楚每個(gè)語句的功能。
14 盡量擺脫c編程的習(xí)慣,總愛用循環(huán),能不用的循環(huán)的盡量不用,掌握矢量化的精髓。
15 善于總結(jié),學(xué)習(xí)過的知識,看過好的帖子可以收藏起來,過段時(shí)間再復(fù)習(xí)一下,一段時(shí)間的積累,你會發(fā)現(xiàn)你的水平在慢慢提高。
16 多用help,see also lookfor get,set 等常用命令。
17 要大膽的去試,試過才知道可不可以,如有人問可不可以把多個(gè)子程序放在一個(gè)m文件中,呵呵,試試不就知道了。
18 多參與討論,不要只關(guān)心自己的問題,也經(jīng)常關(guān)注別人的帖子,從中也可以學(xué)到不少東西的。
19 提醒一句,不要做只會下資料而不看的收藏家,這樣對你沒什么意義,書不在于多,真的看一兩本書也就夠了,以后要用的時(shí)候,再去查書,一味的東看看西看看,見了別人的資料,不關(guān)好不好,就留信箱的人,我感覺也不該這樣,有了那么多資料,就別想著還有沒有比這更好的了,開始學(xué)吧先寫這么多吧,希望對新手能有點(diǎn)用。
感覺語言是相通的,不一定只針對matlab這門語言。
如何寫程序,如果你還是初學(xué)者,那么盡量不要復(fù)制粘貼,那樣你是永遠(yuǎn)也無法學(xué)會寫程序的。另外也不要對著別人的程序,一個(gè)字一個(gè)字敲進(jìn)去,那樣的話你只能成為一名優(yōu)秀的打字員。一個(gè)比較好的方法是先讀懂他,理清他的思路,然后自己動手寫,寫不出來的時(shí)間再看看別人的程序,然后對照的看,你的和他的程序差異在哪里,寫的過程就是提高的過程。
程序運(yùn)行有錯(cuò)誤怎么辦,好多錯(cuò)誤。首先,別害怕錯(cuò)誤,這是每一個(gè)人都會碰到的問題,大牛,小蝦都一樣,你對你自己說 這不機(jī)會又來了,調(diào)程序的過程就是提高的過程。不要一遇到錯(cuò)誤就來論壇發(fā)問了,如何調(diào),關(guān)鍵是看錯(cuò)誤提示,看錯(cuò)誤的類型及出現(xiàn)在哪條語句上。
好好練自己的調(diào)試能力,這不僅可以幫你找到一些錯(cuò)誤,有是碰到一些讀不懂的程序,借助斷點(diǎn)調(diào)試可以幫你讀懂程序。
還不行怎么辦,用搜索引擎找答案(有時(shí)候把錯(cuò)誤提示輸進(jìn)去就可以找到答案了)。
還不行,這才發(fā)貼和別人交流。
寫程序原則:盡量寫的簡單通俗容易懂,讓那些不如你聰明的人都能看懂,命名的時(shí)候做到見名知意,寫的時(shí)間多加點(diǎn)注釋,不然,不要說別人讀不懂你的程序,等過幾天,你自己也讀不懂了,可以看看matlab里的函數(shù),注釋也寫的很詳細(xì),當(dāng)你覺得有些方法比較常用的時(shí)候,你可以封裝成函數(shù),加上一些說明,以后要用的時(shí)候,直接調(diào)用就可以了,注重代碼的重用性。
勿在浮砂筑高臺,基礎(chǔ)很重要,為什么學(xué)matlab ,如果你只是把它當(dāng)成 c c++的附屬品,用這些語言的思維來寫一些奇怪的類matlab程序,我想你還是直接用c 或 c ++更合適,不要一開始就想著用matlab 做出什么東西,好好看一本matlab的基礎(chǔ)書,這些基礎(chǔ)對你以后的進(jìn)階會很有幫助。再說混合編程,什么都不懂就想著去混合編程是不實(shí)際的,maltab版本 vs 的版本不同,都會對混合編程影響的。
所以結(jié)果是對著別人的例子來做也不一定會做出來,一是別人講的有些細(xì)節(jié)問題沒講清楚,二是版本問題。就算做出來,如果不明白為什么要這樣做,又有多大意義呢。然后自己做一個(gè),又不會了。
說這些的目的無非是希望想做混合編程的朋友多了解一些基礎(chǔ)的東西,否則在混合編程這一塊上會浪費(fèi)很多時(shí)間,結(jié)果還是沒有解決問題。
7.0系列 深入淺出matalb混合編程這本書是值得一看的。
多看幫助之類的話這里就不多說了。
現(xiàn)在很多人寫書都太浮躁了,有的本身水平也不夠,有的翻譯的也很垃圾,選書的話請擦亮眼睛,不好的書不但浪費(fèi)了錢,還浪費(fèi)了時(shí)間,而且會讓你懷疑自己的能力水平。說的有點(diǎn)遠(yuǎn)了。
(審核編輯: 智匯張瑜)
分享