亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

計算機專業(yè)C與C++程序設(shè)計研究論文

時間:2024-08-25 22:15:51 計算機 我要投稿

計算機專業(yè)C與C++程序設(shè)計研究論文

  摘要:首先介紹了目前高校計算機學(xué)院C族語言相關(guān)程序設(shè)計課程的建設(shè)狀況。然后從C族語言的相互衍生關(guān)系出發(fā),提出了在高校計算機課程體系中去除C語言的基礎(chǔ)課程,將其綜合成一門C++程序設(shè)計課程來供學(xué)生學(xué)習(xí),并對課程內(nèi)容、參考教材和課時安排上給出了自己的建議。

計算機專業(yè)C與C++程序設(shè)計研究論文

  關(guān)鍵詞:C語言;C++語言;程序設(shè)計

  高校的C族語言教學(xué)總是按照先學(xué)C語言,再學(xué)C++的順序進行,這種學(xué)習(xí)順序隨著C++標(biāo)準(zhǔn)的不斷升級改革后變得越來越不適用。早期的C++屬于多面性語言,即可以像C一樣進行模塊化的面向過程的編程設(shè)計,也可以像Java一樣進行抽象的面向?qū)ο蟪绦蛟O(shè)計。那時的教學(xué)者考慮的是學(xué)生應(yīng)當(dāng)從較為便于理解的面向過程的編程思路入門學(xué)習(xí)C語言編程,然后在熟練了面向過程的編程方式后再從C語言延伸到C++,轉(zhuǎn)而學(xué)習(xí)面向?qū)ο蟮某绦蛟O(shè)計?墒请S著面向?qū)ο蟮某绦蛟O(shè)計在應(yīng)用市場上占領(lǐng)了絕對的主導(dǎo)地位后,再讓學(xué)生從面向過程著手就等于是浪費學(xué)習(xí)時間。加上C++和C兩門語言的初級語法思想是完全一致的,開設(shè)兩門課程浪費了學(xué)時,也耽誤后續(xù)更重要的核心課程的學(xué)習(xí)。

  1程序設(shè)計語言C與C++的比較

  1.1C與C++的共性。一般簡要的介紹是把C++當(dāng)作C的加強版,這種認知當(dāng)然是錯誤的,C++語言的設(shè)計者在設(shè)計之初為了保障自家語言會受到開發(fā)者的關(guān)注,所以兼容了的C的語法,這就自然使得C++可以使用C的編程方式進行程序設(shè)計,所以也導(dǎo)致了很多人對這兩種語言的關(guān)系產(chǎn)生了錯誤的認知。同時由于C語言本身設(shè)定上的優(yōu)越性,所以C++在進行自我定義的時候也沿用了C語言很多優(yōu)良的性質(zhì);A(chǔ)數(shù)據(jù)結(jié)構(gòu)一致,C與C++的基礎(chǔ)數(shù)據(jù)類型都是以變量和常量作為基本屬性劃分,類型上有字符型、整型、長整型、單精度浮點型和雙精度浮點型,不過C++額外增設(shè)了布爾型。復(fù)合型數(shù)據(jù)結(jié)構(gòu)上也都同時具有數(shù)組、多維數(shù)組、結(jié)構(gòu)體、枚舉類型和共同體,但是C++增設(shè)了字符串類型以替代C語言中的字符數(shù)組,功能上更加強大,也更加便捷。在語法方面,聲明、賦值、循環(huán)、選擇的結(jié)構(gòu)和實現(xiàn)都是一致的,并且C++雖然提倡使用類和對象的概念去設(shè)計程序結(jié)構(gòu),可也同樣支持函數(shù)體結(jié)構(gòu)的程序設(shè)計結(jié)構(gòu)。并且C語言中函數(shù)的賦值都是間接調(diào)用,在使用C語言函數(shù)時總是會在指針上出現(xiàn)各種紕漏,但是C++的函數(shù)體可以使用引用參數(shù),這就使得C++的函數(shù)體比之C的更加好用。總的說來就是,C++標(biāo)準(zhǔn)下用戶可以完全使用C語法進行編程而不會出現(xiàn)任何BUG,同時C++自身的優(yōu)越設(shè)定和標(biāo)準(zhǔn)使得其設(shè)計能力比C要強大數(shù)倍,是目前市場上大型程序開發(fā)的首選語言。

  1.2C與C++的不同。上一節(jié)介紹了C++和C的基礎(chǔ)語法上的區(qū)別,這些區(qū)別都是C++的作者在C的基礎(chǔ)之上修訂而來的結(jié)果,是為了讓C++標(biāo)準(zhǔn)下得面向過程的程序設(shè)計比之單純的C更加便捷方便。但是C++的誕生伊始,就是一門向上使用面對對象的程序設(shè)計思想的高級編程語言。它的封裝性、繼承性、多態(tài)性和對象唯一性才是C++成為強大高級語言的重要原因,這些特性都是C語言不可能擁有的。所以C能夠?qū)崿F(xiàn)的程序,C++能夠?qū)崿F(xiàn)并且實現(xiàn)的更為方便,C不能實現(xiàn)的程序,C++同樣可以實現(xiàn)。

  1.3C++的特色。承接上一節(jié),C++和C之間最大的不同,也是C++自身最值得夸耀的特性,就是面向?qū)ο蟪绦蛟O(shè)計思想。這種思想使得C++語言設(shè)計出來的程序,變成了類和對象的有機結(jié)合,這種結(jié)合的代碼比之面向過程的函數(shù)體架構(gòu)的代碼更加易讀,共同開發(fā)起來容易上手,后續(xù)的維護者也不用費更多的腦筋去理解前人的代碼含義。而類和對象的設(shè)計思路,使得開發(fā)者合作時相互之間的工作變的更為獨立,雙方之間只需要知道對方所寫的類實現(xiàn)的功能和包含的數(shù)據(jù)就行。這種特性我們稱之為良好的封裝性,開發(fā)者之間不需要去知道對方的代碼是如何實現(xiàn),甚至在此之上還可以保證良好的代碼健壯性。因為類的引入,更先進的作用域機制也被引入進來,類的書寫者往往會將自己類中的數(shù)據(jù)進行嚴(yán)格的作用域限定,防止其他合作者擅自去修改和使用自己類中的數(shù)據(jù)。合作者想要知道類中的數(shù)據(jù)或者使用類中的數(shù)據(jù),只能通過類的書寫者定義的帶有檢查機制的方法才行。這樣會使得很多人合作開發(fā)的大型項目的穩(wěn)定性和安全性比之用C語言開發(fā)時再上一個臺階。同時類的概念中還有一個先進的設(shè)定就是繼承性,并且由這個繼承性還延伸出了接口的概念。有了可以繼承的接口和類,那么開發(fā)者在對程序進行迭代的瀑布開發(fā)流程時,就可以很好的使用自己曾經(jīng)開發(fā)的源代碼,或者借用其他項目的源代碼,因為只要學(xué)會科學(xué)的使用繼承機制,就不僅僅是節(jié)約程序員的代碼時間,也減少了程序員在回顧曾經(jīng)代碼時發(fā)生的錯誤和歧義。而與繼承機制配合使用的是多態(tài)性,曾經(jīng)C語言中定義的函數(shù),其靈活度非常差,特定的函數(shù)只能滿足特定程序定義的需求,想要重用曾經(jīng)的源代碼是幾乎不可能的事情。我們剛才提到的繼承機制使得C++開發(fā)者復(fù)用源代碼成為了一種習(xí)慣,但是復(fù)用時不可避免的修改問題又?jǐn)[到了臺面上,多態(tài)機制順應(yīng)而生了。多態(tài)機制使得類不僅可以繼承其他類,將父類的數(shù)據(jù)和方法都在本類體中自如的使用,同時還可以用本類中新的定義和代碼去覆蓋父類中的數(shù)據(jù)定義和方法。這就讓程序員變的更加自由,想用父類的數(shù)據(jù)和方法時就去繼承,但是不想全部使用時就加上多態(tài)機制去覆蓋。這樣代碼之間的重復(fù)利用率變得十分客觀,節(jié)約了大量的開發(fā)時間和開發(fā)成本。

  2程序設(shè)計語言C與C++開設(shè)建議

  C++課程的內(nèi)容應(yīng)當(dāng)如下安排:第一部分,教授C++的基礎(chǔ)語法,讓學(xué)生可以編寫出在DOS命令行下輸入輸出的程序,了解編程的基本概念和思想。并且這時應(yīng)當(dāng)同時進行C和C++的雙向語法教學(xué),為日后學(xué)生進入高年級后的方向選擇打下基礎(chǔ)。此部分使用半個學(xué)期最為適宜,并且此時并不灌輸學(xué)生何為面向?qū)ο蠛螢槊嫦蜻^程,而主在讓學(xué)生使用基礎(chǔ)語法進行最基本的編程探索。第二部分,在學(xué)生有了基礎(chǔ)編程知識后,將數(shù)據(jù)結(jié)構(gòu)的內(nèi)容放入課程中去,用半學(xué)期的時間教授學(xué)生用C++實現(xiàn)的各類常見數(shù)據(jù)結(jié)構(gòu)。并且結(jié)合實際開發(fā)項目中的代碼作為閱讀補充,讓學(xué)生明白數(shù)據(jù)結(jié)構(gòu)的知識對程序開發(fā)的意義,然后將簡化后的小項目作為課堂的主要內(nèi)容,用實際的代碼讓學(xué)生去理解那些枯燥的數(shù)學(xué)定理和概念。而且在實現(xiàn)數(shù)據(jù)結(jié)構(gòu)的過程中,必然會面對一些更為高級的C++語法和概念?偟膩碚f,用大一上的一個學(xué)期讓學(xué)生對于基礎(chǔ)編程有了良好的認知和深入,是十分值得和有效的。第三部分,在學(xué)生有了數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)和C++的基本語法掌握后,應(yīng)當(dāng)面對一些實際的開發(fā)項目和問題。當(dāng)然實際的問題還是需要老師進行簡化,其主要目的是讓學(xué)生掌握C++的高級特性和實際軟件開發(fā)的過程與思路,并且想學(xué)生傳授基礎(chǔ)的算法。這一部分較為困難,應(yīng)當(dāng)使用一個學(xué)期讓學(xué)生慢慢的掌握和熟悉。第四部分,在學(xué)生算是對C++語言和數(shù)據(jù)結(jié)構(gòu)與算法都有了基礎(chǔ)的入門后,再進行課堂教學(xué)意義就不大了,應(yīng)當(dāng)再大二上學(xué)期開設(shè)一門課程設(shè)計實驗課,讓學(xué)生完成幾個難度從小到大的項目,循序漸進的掌握基本的實際開發(fā)技巧和思維。

  參考文獻

  [1]羅莉.計算機程序設(shè)計的多應(yīng)用型開發(fā)與實現(xiàn)[J].產(chǎn)業(yè)與科技論壇,2015(14):54-55.

  [2]鄧薇,何锫,錢俊彥,等.深度優(yōu)先的多基因表達式程序設(shè)計[J].模式識別與人工智能,2013(9):819-828.

  [3]宛西原,汪霞.非計算機本科專業(yè)計算機程序設(shè)計課程的改革思考[J].計算機工程與科學(xué),2014(z1):56-59.

【計算機專業(yè)C與C++程序設(shè)計研究論文】相關(guān)文章:

地方高校計算機專業(yè)程序設(shè)計研究論文02-23

計算機專業(yè)研究生論文致謝11-19

非計算機專業(yè)C語言教學(xué)模式分析論文02-20

計算機專業(yè)程序設(shè)計基礎(chǔ)課程教學(xué)改革論文11-09

C語言專業(yè)論文致謝詞12-11

計算機專業(yè)圖像處理課程改革研究論文02-18

計算機C語言的論文致謝詞03-19

《C語言程序設(shè)計》課程的教學(xué)改革與實踐論文03-06

計算機C語言論文致謝11-26

中職計算機專業(yè)的論文02-26

  • 相關(guān)推薦