求一篇計算機導論學後感,1500字左右
題目:
求一篇計算機導論學後感,1500字左右
應該大二 的都過吧
好的答案再加100分
解答:
計算機科學與技術這一門科學深深的吸引著我們這些同學們,原先不管是國內還是國外都喜歡把這個系分爲計算機軟體理論、計算機系統、計算機技術與應用.後來又合到一起,變成了現在的計算機科學與技術.我一直認爲計算機科學與技術這門專業,在本科階段是不可能切分成計算機科學和計算機技術的,因爲計算機科學需要相當多的實踐,而實踐需要技術;每一個人(包括非計算機專業),掌握簡單的計算機技術都很容易(包括原先Major們自以爲得意的程序設計),但計算機專業的優勢是:我們掌握許多其他專業並不"深究"的東西,例如,算法,體系結構,等等.非計算機專業的人可以很容易地做一個晶片,寫一段程序,但他們做不出計算機專業能夠做出來的大型系統.今天我想專門談一談計算機科學,並將重點放在計算理論上.
1)計算機語言
隨著20世紀40年代第一台存儲程序式通用電子計算機的研製成功,進入20世紀50年代後,計算機的發展步入了實用化的階段.然而,在最初的應用中,人們普遍感到使用機器指令編製程序不僅效率低下,而且十分彆扭,也不利於交流和軟體維護,複雜程序查找錯誤尤其困難,因此,軟體開發急需一種高級的類似於自然語言那樣的程序設計語言.1952年,第一個程序設計語言Short Code出現.兩年後,Fortran問世.作爲一種面向科學計算的高級程序設計語言,Fortran的最大功績在於牢固地樹立了高級語言的地位,並使之成爲世界通用的程序設計語言.Algol60的誕生是計算機語言的研究成爲一門科學的標誌.該語言的文本中提出了一整套的新概念,如變量的類型說明和作用域規則、過程的遞歸性及參數傳遞機制等.而且,它是第一個用嚴格的語法規則——巴科斯範式(BNF)定義語言文法的高級語言.程序設計語言的研究與發展在產生了一批成功的高級語言之後,其進一步的發展開始受到程序設計思想、方法和技術的影響,也開始受到程序理論、軟體工程、人工智慧等許多方面特別是實用化方面的影響.在「軟體危機」的爭論日漸平息的同時,一些設計準則開始爲大多數人所接受,並在後續出現的各種高級語言中得到體現.例如,用於支持結構化程序設計的PASCAL語言,適合於軍隊各方面應用的大型通用程序設計語言ADA,支持並發程序設計的MODULA-2,支持邏輯程序設計的PROLOG語言,支持人工智慧程序設計的LISP語言,支持面積對象程序變換的SMALLTALK、C等.而且,伴隨著這些語言的出現和發展,產生了一大批爲解決語言的編譯和應用中所出現的問題而發展的理論、方法和技術.有大量的學術論文可以證明,由高級語言的發展派生的各種思想、方法、理論和技術觸及到了計算機科學的大多數學科方向,但內容上仍相對集中在語言、計算模型和軟體開發方法學方面.
(2)計算機模型與軟體開發方法
20世紀80年代是計算機網絡、分布式處理和多媒體大發展的時期.在各種高級程序設計語言中增加並發機構以支持分布式程序設計,在語言中通過擴展繪圖子程序以支持計算機圖形學程序設計成爲當時程序設計語言的一種時尚.之後,在模數/數模轉換等接口技術和資料庫技術的支持下,通過擴展高級語言的程序庫又實現了多媒體程序設計的構想.進入20世紀90年代之後,並行計算機和分布式大規模異質計算機網絡的發展又將並行程序設計語言、並行編譯程序、並行作業系統、並行與分布式資料庫系統等試行軟體的開發的關鍵技術依然與高級語言和計算模型密切相關,如各種並行、並發程序設計語言,進程代數,PETRI網等,它們正是軟體開發方法和技術的研究中支持不同階段軟體開發的程序設計語言和支持這些軟體開發方法和技術的理論基礎——計算模型.
(3)計算機應用
用計算機來代替人進行計算,就得首先研究計算方法和相應的計算機算法,進而編制電腦程式.由於早期計算機的應用主要集中在科學計算領域,因此,數值計算方法就成爲最早的應用數學分支與計算機應用建立了聯繫.最初的時候,由於計算機的存儲器容量很小,速度也不快,爲了計算一些稍稍大一點的題目,人們常常要挖空心思研究怎樣節省存儲單元,怎樣減少不需要的操作.爲此,發展了像稀疏矩陣計算理論來進行方程組的求解;發展了雜湊函數來動態地存儲、訪問數據;發展了虛擬程序設計思想和程序覆蓋技術在內存較小的計算機上運行較大的程序;在子程序和程序包的概念提出之後,許多人開始將數學中的一些通用計算公式和計算方法寫成子程序,並進一步開發成程序包,通過簡潔的調用命令向用戶開放.子程序的提出是今日軟體重用思想的開端.
在計算機應用領域,科學計算是一個長久不衰的方向.該方向主要依賴於應用數學中的數值計算的發展,而數值計算的發展也受到來自計算機系統結構的影響.早期,科學計算主要在單機上進行,經歷了從小規模數值分析到中大規模數值分析的階段.隨著並行計算機和分布式並行計算機的出現,並行數值計算開始成爲科學計算的熱點,處理的問題也從中大規模數值分析進入到中大規模複雜問題的計算.所謂中大規模複雜問題並不是由於數據的增大而使計算變得困難,使問題變得複雜,而主要是由於計算中考慮的因素太多,特別是一些因素具有不確定性而使計算變得困難,使問題變得複雜,其結果往往是在算法的研究中精度與複雜性的矛盾難於克服.
幾何是數學的一個分支,它實現了人類思維方式中的數形結合.在計算機發明之後,人們自然很容易聯想到了用計算機來處理圖形的問題,由此產生了計算機圖形學.計算機圖形學是使用計算機輔助產生圖形並對圖形進行處理的科學.並由此推動了計算機輔助設計(CAD)、計算機輔助教學(CAI)、計算機輔助信息處理、計算機輔助測試(CAT)等方向的發展.
在各種實際應用系統的開發中,有一個重要的方向值得注意,即實時系統的開發.
利用計算機證明數學定理被認爲是人工智慧的一個方向.人工智慧的另一個方向是研究一種不依賴於任何領域的通用解題程序或通用解題系統,稱爲GPS.特別值得一提的是在專家系統的開發中發展了一批新的技術,如知識表示方法、不精確性推理技術等,積累了經驗,加深了對人工智慧的認識.20世紀70年代末期,一部分學者認識到了人工智慧過去研究工作基礎的薄弱,開始轉而重視人工智慧的邏輯基礎研究,試圖從總結和研究人類推理思維的一般規律出發去研究機器思維,並於1980年在《Artificial Intelligence》發表了一組非單調邏輯的研究論文.他們的工作立即得到一大批計算機科學家的響應,非單調邏輯的研究很快熱火朝天地開展起來,人工智慧的邏輯基礎成爲人工智慧方向發展的主流.
資料庫技術、多媒體技術、圖形學技術等的發展產生了兩個新方向,即計算可視化技術與虛擬實境技術.
隨著計算機網絡的發展,分布在全世界的各種計算機正在以驚人的速度相互連接起來.網絡上每天都在進行著大量政治、經濟、軍事、外交、商貿、科學研究與藝術信息的交換與交流.網絡上大量信息的頻繁交換,雖然縮短了地域之間的距離,然而同時也使各種上網的信息資源處在一種很難設防的狀態之中.於是,計算機信息安全受到各國政府的高度重視.除了下大力氣研究對付計算機病毒的軟硬體技術外,由於各種工作中保密的需要,計算機密碼學的研究更多地受到各國政府的重視.
實際上,在計算機科學中計算機模型和計算機理論與實現技術同樣重要.但現在許多學生往往只注重某些計算機操作技術,而忽略了基礎理論的學習,並因爲自己是「操作高手」而沾沾自喜,這不僅限制了自己將研究工作不斷推向深入,而且有可能使自己在學科發展中處於被動地位.例如,在20世紀50年代和20世紀60年代,我國隨著計算機研製工作和軟體開發工作的發展,陸續培養了在計算機製造和維護中對計算機某一方面設備十分精通的專家,他們能準確地弄清楚磁芯存儲器、磁鼓、運算器、控制器,以及整機線路中哪一部分有問題並進行修理和故障排除,能夠編制出使用最少存儲單元而運算速度很快的程序,對機器代碼相當熟悉.但是,當容量小的磁芯存儲器、磁鼓、速度慢的運算器械、控制器很快被集成電路替代時,當程序設計和軟體開發廣泛使用高級語言、軟體開發工具和新型軟體開發方法後,這批技術精湛的專家,除少量具有堅實的數學基礎、在工作中已有針對性地將研究工作轉向其他方向的人之外,相當一部分專家伴隨著新技術的出現,在替代原有技術的發展過程中而被淘汰.因此,在計算機科學中,計算比實現計算的技術更重要.只有打下堅實的理論基礎,特別是數學基礎,學習計算機科學技術才能事半功倍,只有建立在高起點理論基礎之上的計算機科學技術,才有巨大的潛力和發展前景.
計算機理論的一個核心問題
我國計算機科學系裡的傳統是培養做學術研究,尤其是理論研究的人(方向不見得有多大的問題,但是做得不是那麼盡如人意).而計算機的理論研究,說到底了,如網絡安全學,圖形圖像學,視頻音頻處理,哪個方向都與數學有著很大的關係,雖然也許是正統數學家眼裡非主流的數學.這裡我還想闡明我的一個觀點:我們都知道,數學是從實際生活當中抽象出來的理論,人們之所以要將實際抽象成理論,目的就在於想用抽象出來的理論去更好的指導實踐,有些數學研究工作者喜歡用一些現存的理論知識去推導若干條推論,殊不知其一:問題考慮不全很可能是個錯誤的推論,其二:他的推論在現實生活中找不到原型,不能指導實踐.嚴格的說,我並不是一個理想主義者,政治課上學的理論聯繫實際一直是指導我學習科學文化知識的航標(至少我認爲搞計算機科學與技術的應當本著這個方向).
我個人的淺見是:計算機系的學生,對數學的要求固然跟數學系不同,跟物理類差別則更大.通常非數學專業的所?高等數學",無非是把數學分析中較困難的理論部分刪去,強調套用公式計算而已.而對計算機系來說,數學分析里用處最大的恰恰是被刪去的理論部分.記上一堆曲面積分的公式,難道就能算懂了數學?那倒不如現用現查,何必費事記呢?再不然直接用Mathematica或是Matlab好了.退一萬步.華羅庚在數學上的造詣不用我去多說,但是他這光輝的一生做得我認爲對我們來說,最重要的幾件事情:首先是它籌建了中國科學院計算技術研究所,這是我們國家計算機科學的搖籃.在有就是他把很多的高等數學理論都交給了做工業生產的技術人員,推動了中國工業的進步.第三件就是他一生寫過很多書,但是對高校師生價值更大的就是他在病期間在病牀上和他的愛徒王元寫了《高等數學引論》(王元與其說是他的愛徒不如說是他的同事,是中科院數學所的老一輩研究員,對歌德巴赫猜想的貢獻全世界僅次於陳景潤)這書在我們的圖書館裡居然找得到,說實話,當時那個書上已經長了蟲子,別人走到那裡都會閃開,但我卻格外感興趣,上下兩冊看了個遍,我的最大收穫並不在於理論的闡述,而是在於他的理論完全的實例化,在生活中去找模型.這也是我爲什麼比較喜歡具體數學的原因,正如我在上文中提到的,理論脫離了實踐就失去了它存在的意義.正因爲理論是從實踐當中抽象出來的,所以理論的研究才能夠更好的指導實踐,不用於指導實踐的理論可以說是毫無價值的.
正如上面所論述的,計算機系的學生學習高等數學:知其然更要知其所以然.你學習的目的應該是:將抽象的理論再應用於實踐,不但要掌握題目的解題方法,更要掌握解題思想,對於定理的學習:不是簡單的應用,而是掌握證明過程即掌握定理的由來,訓練自己的推理能力.只有這樣才達到了學習這門科學的目的,同時也縮小了我們與數學系的同學之間思維上的差距.
關於計算機技術的學習我想是這樣的:學校開設的任何一門科學都有其滯後性,不要總認爲自己掌握的某門技術就已經是天下無敵手了,雖然現在Java,VB,C,C++用的都很多,怎能保證沒有被淘汰的一天,我想.NET平台的誕生和X#語言的初見端倪完全可以說明問題.換言之,在我們掌握一門新技術的同時就又有更新的技術產生,身爲當代的大學生應當有緊跟科學發展的素質.舉個例子,就像有些同學總說,我做網頁設計就喜歡直接寫html,不願意用什麼Frontpage,Dreamweaver.能用語言寫網頁固然很好,但有高效的手段你爲什麼不使呢?僅僅是爲了顯示自己的水平高,unique? 我看真正水平高的是能夠以最快的速度接受新事物的人.高級程序設計語言的發展日新月異,今後的程序設計就像人們在說話一樣,我想大家從xml中應是有所體會了.難道我們真就寫個什麼都要用彙編,以顯示自己的水平高,真是這樣倒不如直接用機器語言寫算了.反過來說,想要以最快的速度接受並利用新技術關鍵還是在於你對計算機科學地把握程度.
總的來說,從教育角度來講,國內高校的課程安排不是很合理,強調理論,又不願意在理論上深入教育,無力接受新技術,想避開新技術又無法避得一乾二淨.我覺得關鍵問題就是國內的高校難於突破現狀,條條框框限制著怎麼求發展.我們雖然認識得到國外教育的優越性,但爲什麼遲遲不能採取行動?哪怕是去粗取精的取那麼一點點.
添加新評論