㈠ 計算機基礎課程有那些
您好!
請看資料,或許會有幫助的。
根據不同專業對計算機的不同需求,北京大學計算機基礎課程教學體系劃分為計算機專業(A類)、理科非計算機專業(B類)、文科專業(C類)三類。
為了了解北京大學計算機基礎教學的課程體系和知識點設置的情況,以及學生的學習效果,我們在北京大學計算機基礎任課教員和低年級理科學生中進行 了計算機基礎課程分類分級教學情況的調查。下面重點介紹北京大學計算機基礎課程教學體系、課程設置以及教學效果、教學經驗、教學改革等方面的調查結果。
一、北京大學計算機基礎課程教學體系
北京大學計算機基礎課程教學體系按照計算機專業(A類)、理科非計算機專業(B類)、文科專業劃分為三類。A類和B類的計算機基礎課程有三門課程:計算概論、數據結構與演算法、微機原理。為了加強計算機專業學生的程序設計能力,在信息學院專門為計算機專業學生開設了程序設計實習、數據結構與演算法實習這兩門實踐課程,進行系統的程序設計訓練。C類計算機基礎課程包括兩學期的內容:文科計算機基礎(上)、文科計算機基礎(下)。
三類教學體系中不同的課程都設有主持教員和主講教員,這些來自北京大學不同的院系的教員組成教學小組,共同制定教學大綱、選取教材、統一教學進度、定期交流教學經驗。
1.計算機專業計算機基礎課程體系(A類)
在設置計算機專業的基礎課程時,基於如下的考慮:
(1)首先要給學生提供對計算機學科的一個全局性了解,建立學科全局觀,既有利於日後深入學習做出選擇,也有利於對各學科分支在學科全局中的位置和相互關系有透徹的理解。
(2)設計程序解決一個問題時,除了認真分析問題之外,最重要的是選擇合適的數據結構,並設計滿足限制條件(或者更優)的演算法。因此,計算機專業的學生要熟練掌握各種常見的數據結構,深刻理解某些經典演算法,如快速排序、二分法等等的原理和時間、空間復雜度,掌握演算法設計的一般步驟。
(3)計算機專業的學生應該從理論和實踐上掌握微型計算機的基本組成、工作原理及常用介面技術,建立微機整體概念,具備利用微機進行硬、軟體開發的初步能力。除此之外,還要初步掌握匯編語言程序設計的基本方法和上機調試過程。
因此,北京大學計算機系設置了計算概論課程、數據結構與演算法課程、數據結構實習、程序設計實習和微機原理課程。其中,計算概論作為總論性質的課程,是其他課程的先修課程。
2.理科非計算機專業計算機基礎課程體系(B類)
非計算機專業學習計算機技術的目的很明確,不是把它作為純理論的課程來學習,而是作為應用技術來掌握。對於理工類非計算機專業的學生來說,雖然他們在學習和工作中不是以計算機為中心,但是很多情況下卻離不開計算機,他們需要結合自己的專業,利用計算機作為工具來開展工作。
與計算機專業一樣,對理科非計算機專業的計算機基礎課程體系同樣也設置了計算概論、數據結構與演算法、微機原理三門課程。但是,由於兩者的學習目的不同,故而要求也有很大不同。
3.文科專業計算機基礎課程體系(C類)
對文科學生在計算機方面的要求比對理科非計算機專業學生的要求更低一些,教授的內容也更偏向於應用,結合使用計算機和應用計算機,講解計算機與信息技術的基本知識和基本方法。文科專業計算機基礎課程包括兩學期的內容:文科計算機基礎(上)、文科計算機基礎(下)。
二、課程的主要教學目標和教學內容
各門課程的主持和主講教員參考各門課程的主持和主講教員參考CCC2002(China Computing Curricula, 中國計算機科學與技術學科教程)、CC2001、「計算機基礎教學白皮書」和CFC2004(China Fundamental-computing Curricula, 中國高等院校計算機基礎教育課程體系)等課程體系為不同類型的計算機基礎教育課程分別制定了教學大綱。
1. 計算機專業
計算機專業的計算機基礎課包括五門課程:計算概論、數據結構與演算法、數據結構與演算法實習、程序設計實習、微機原理。其中,計算概論是其他課程的先修課,數據結構與演算法和數據結構與演算法實習是兩門同修課程。
(1) 計算概論A(54學時,3學分)
這門課程的教學目標是給計算機專業的學生提供一個對計算機學科的全局性認識,讓學生一開始就有全局觀,既對日後深入學習做出選擇提供幫助,又有利於透徹理解各學科分支在整個計算機學科中的位置和相互關系。在教學實踐中,既要遵循人的認識習慣,又能讓學生有效地掌握學科哲學思想。
該課程的基本目的是:使學生了解『計算科學』的意義、內容和方法,從基礎理論、基本開發技術和應用三個層面來介紹;使學生對計算機的認識由感性的、功能的認識深入到內涵的、機理的認識;使學生對計算機學科的主要骨幹課的內容以及相互關系有一個概括的了解,對計算機專業的課程體系建立一個整體印象;使學生掌握程序設計的基本方法,可以用C++語言編寫應用程序。
在教學實踐中,我們採用了兩條主線:計算科學簡介,C++程序設計。即在介紹計算科學的同時也講解C++程序設計,實踐證明,這樣收到了很好的教學效果。
教學方式:既有課堂教學(多媒體教學),又有網路課堂:http://162.105.80.97 ,可以進行課後復習、交作業、討論、輔導答疑,等等。
(2) 程序設計實習(36學時,2學分)
這是信息學院本科生必修課。
該課程的基本目的是:了解程序設計語言的本質,並熟練掌握一種程序設計語言;培養學生的實際動手能力, 為進一步學習其他專業課程奠定良好的基礎。目前程序設計使用的高級語言是C++。
教學方式:課堂授課和上機實習相結合。
(3) 數據結構與演算法A(54學時,3學分)
該課程為信息學院本科生必修課,又是計算機軟體專業一門十分重要的基礎課。計算機科學各領域及有關的應用軟體都要使用到各種數據結構。這門課程向學生詳細講解各種常見的數據結構及其特點,講授演算法設計和分析技術的一般方法,使學生能夠熟練運用各種數據結構,針對具體問題設計出合適的演算法。
課程網站: http://db.pku.e.cn/mzhang/ds/
該課程的基本目的是:通過本課程的學習,學生將基本掌握數據結構和演算法的設計分析技術,提高程序設計的質量;根據所求解問題的性質選擇合理的數據結構並對時間空間復雜性進行必要的控制;培養學生邏輯思維能力、獨立思考能力、分析問題和解決問題能力,以及嚴謹的科學作風。
(4) 數據結構與演算法實習(周學時4,2學分)
該課程為信息學院本科生必修課,先修要求:計算概論A ,同修要求:數據結構與演算法。
課程網站:http://db.pku.e.cn/mzhang/ds/shixi/index.htm
該課程的基本目的是:配合「數據結構」理論課程的學習,提高學生的實際動手能力;能夠獨立地實現常用基本數據結構的ADT,能夠靈活地應用基本ADT,以及相應的STL中設置的常用數據結構,解決一些實際問題,獨立編寫中小型應用程序;應用基本數據結構,並結合排序、檢索、文件、索引等技術,合作編寫比較綜合的大型應用程序。
(5) 微機原理A(54學時,3學分)
該課程為信息學院本科生必修課,先修要求:計算概論A,數字邏輯。
該課程的基本目的是:從理論和實踐上掌握微型計算機的基本組成、工作原理及常用介面技術;初步掌握匯編語言程序設計的基本方法和上機調試過程;建立微機整體概念,具備利用微機進行硬、軟體開發的初步能力。
教學方式:課堂講授,示教演示,上機實習。
2. 理科非計算機專業
理科非計算機專業計算機基礎課程包括3門課:計算概論、數據結構與演算法、微機原理。其中,計算概論是其他兩門課程的先修課。
(1)計算概論B(51學時,3學分)
該課程為理科本科通選基礎課B。
課程網站:http://162.105.30.60/course/index.htm; http://icl.pku.e.cn/member/hujf/;ftp://162.105.20.22/courses/; http://gis.pku.e.cn/Course/ComputerCourse02/index.htm
該課程的基本目的是:使學生初步理解有關計算機和信息技術的基本概念和基礎知識,學會使用計算機進行信息處理,使用常用軟體,使用網際網路;講授程序設計基礎,側重其基本部分。
教學方式:課堂講授,配以上機。每次課都布置作業,包括上機作業。
(2)數據結構與演算法B(2(課堂教學)+2(教學實驗)課時/周,3學分)
該課程為理科本科生必修課 。
先修課程: 計算概論(通過學習計算概論,學生要有一定的程序設計能力,能熟練掌握運用C的控制結構,函數定義與調用,數組,結構,指針。
課程網站:http://162.105.69.120/teachers/zhangnx/ds/演算法與數據結構/INDEX.HTM;ftp://162.105.20.22/courses/;http://db.pku.e.cn/ds/
該課程的基本要求是:從每個數據結構的邏輯結構、相應的一組基本運算和實現三個方面去掌握線性表、棧、隊列、串*、樹、圖和字典等常用的數據結構;掌握在順序存儲結構上實現的重要的幾種排序演算法;對演算法的時間和空間復雜性有一定的分析能力;針對簡單的應用問題,應能選擇合適的數據結構及設計有效的演算法解決之。
教學方式:以課堂講授為主,並根據教學進度安排上機實驗。上機內容包括:單鏈表、棧、二叉樹操作、圖的遍歷、檢索、排序。
(3)微機原理B(54學時,3學分)
該課程為理科非計算機專業限制性選修課。由於絕大部分非計算機專業的學生沒有學過數字邏輯課程,所以與計算機系微機原理課程相比,增加了數字邏輯的基本內容;在內容的深度上也比計算機專業略淺一些。
該課程的基本目的:理解微型計算機的基本組成、工作原理及常用介面技術;初步掌握匯編語言程序設計的基本方法和上機調試過程;建立微機整體概念。
教學方式:課堂講授,示教演示,上機實習。
3.文科
文科專業計算機基礎課程分兩學期講授。
(1)文科計算機基礎(上)(48學時,2學分)
該課程為文科必修課程。這門課的目的是向文科學生介紹計算機的發展,計算機的使用與維護,計算機網路方面的常識,以及常用軟體(如word、excel)的使用。通過本課程的學習,希望學生能夠較為熟練地使用計算機,真正把計算機作為日常生活和學習中的工具。
課程網站:http://162.105.30.75;http://162.105.30.75:8080;http://162.105.30.80:8000
教學方式:對於基礎知識採用課堂講授的形式,對於其他需要動手操作的技能採用上機實驗。
(2)文科計算機基礎(下)(周學時3,2學分)
該課程為文科類必修課程。該課程講授較為高級的計算機應用技術,一共包含7個模塊:網路、多媒體、資料庫、VB、ASP、網頁製作、動態網頁製作。我們將這個7個模塊組合起來,一共形成了7門課程,學生可以任選其中1種或2種。這7門課程是:網路與多媒體技術,網路與資料庫技術,網路與VB程序設計,資料庫與VB程序設計,VB與ASP,(靜態)網頁製作,動態網頁製作。
三、教學效果的調查結果
參與調查的學生一共626人(包括網上答卷和紙質答卷),其中計算機專業(簡稱A類)343人(只學過計算概論的學生153人,學過數據結構和計算概論的學生71人,全部基礎課程都學過的學生119人),理科非計算機專業(簡稱B類)165人,文科專業(簡稱C類)118人。
我們從基本信息、師資力量、教學方式、教學效果、課程安排五個方面進行了調查,並對結果進行了初步分析。由於文章的篇幅的限制,本文只給出教學效果,也就是學生對課程的知識點的了解程度。
在教學效果的調查中,對每門課程,我們讓學生選出他們認為重要的知識點(多選),這樣可以從結果看出不同年級和專業的學生對所學過每門課程的認識。
對理科專業(包括計算機專業)的學生考察了他們對4門課程的認識:計算概論、程序設計、數據結構與演算法、微機原理。由於文科專業課程內容相對簡單,我們將各個知識點匯聚在一起作為一門課程(文科計算機基礎)來考察。
1.計算概論
調查結果表明,「學習寫出正確、簡潔的程序」被所有的學生(包括計算機專業和非計算機專業)認為是計算概論課程中最重要的知識點。計算機專業學生認為最不重要的知識點是機器指令與匯編,其次是布爾代數與邏輯電路。理科非計算機專業學生認為最不重要的知識點是布爾代數與邏輯電路,其次是計算模型。
計算機專業一年級學生對計算概論課程的各個知識點重要性的認識沒有很大的起伏,而二年級學生(學過數據結構和微機原理的學生)對其中不同知識點有不同對待。二年級學生普遍認為機器指令和匯編、系統軟體和應用軟體、計算機網路等知識點不重要,原因可能是內容比較簡單(例如系統軟體和應用軟體),或者以後會學到而且現在不急於了解(例如計算機組織與體系結構)。
2.程序設計
調查結果表明,學生認為最重要的知識點是指針,其次是基本程序結構;認為最不重要的知識點是貪心法,廣度優先搜索。學生認為指針是程序設計中最重要的知識點,這和我們教學中採用C/C++作為入門語言不無關系。
觀察計算機專業三類學生的看法,可以看出,隨著學習的深入,認為數組、遞歸和回朔兩個知識點很重要的學生比例在增加。例如一年級中只有37%的學生認為數組重要,而到二年級之後這個比例上升到70%以上。
3.數據結構與演算法
調查結果表明,計算機專業學生認為數據結構中前幾個最重要的知識點是:排序、二叉樹、圖的遍歷、索引(包括B樹/B+樹);最不重要的知識點是高級數據結構(如字元樹、廣義表、AVL樹)其次是樹。
理科非計算機專業認為最重要的知識點依次是線性表、二叉樹、排序,認為最不重要的知識點是高級數據結構、索引,其次是散列與檢索。
教學實踐中,我們的教學重點也基本上與學生認為最重要的知識點基本一致。同時在教學過程中沒有重點講授的內容(如高級樹形結構),也被學生們認為是不重要的。
4.微機原理課程
調查結果表明,計算機專業學生認為最重要的知識點是匯編語言程序格式,其次是CPU的操作和時序、指令編碼格式及80x86指令系統、中斷的用途和中斷控制器的作用;最不重要的知識點依次是偽指令和宏指令、外部引腳的功能、操作數的匯編表示、存儲空間的擴展。
理科非計算機專業學生認為微機原理中最重要的知識點依次是定時器/計數器、中斷的用途和中斷控制器的作用、存儲器的結構、存儲器工作原理;最不重要的知識點是匯流排及常見匯流排標准、偽指令和宏指令、存儲空間的擴展等。
5.文科計算機基礎
由於文科專業課程內容相對簡單,我們將各個知識點匯聚在一起作為一門課程(文科計算機基礎)來考察。
調查結果表明,可以看出文科專業學生最感興趣的知識點依次是:動畫的處理、演示文稿的製作、文字處理軟體的功能和用法、計算機安全與犯罪的有關常識;最不感興趣的知識點是計算機文化與信息化社會、與計算機應用相關的道德與法規介紹、計算機的概念和發展史、軟體與知識產權保護、計算機中的信息表示、網路教學與遠程教育等。
6.教學效果小結
我們在分析了各專業各年級的調查數據之後,可以得出如下幾個結論:
(1)在計算機專業,不同年級的學生對同一門課的認識可能會有比較大的出入;而在非計算機專業,不同年級的學生對同一門課的認識基本一致。例如計算機專業的學生對計算概論的認識,一年級學生認為較為重要的知識點如機器指令和匯編、系統軟體和應用軟體、計算機網路等,二年級的學生卻認為都不重要。原因大概是內容比較簡單,或者以後會學到。
(2)無論是計算機專業還是理科非計算機專業,學生普遍認為程序設計中最重要的知識點是指針。這和我們教學使用的編程語言有很大關系,因為目前教學實踐中程序設計採用的入門語言一般是C/C++,而C/C++中指針功能強大但是不容易掌握,所以多數學生認為指針是程序設計中最重要的知識點。Java的語法中沒有指針,面向對象的風格更完備,學生學起來可能比C++更容易一些。是否採用Java作為入門語言,是值得我們考慮的一個問題。
(3)學生認為數據結構中最重要的知識點是快速排序、二叉樹、二叉樹的遍歷、圖的遍歷、最短路徑、B樹/B+樹等,這基本上和我們教學中重點講述的內容一致。
(4)文科學生對動畫的處理、演示文稿的製作、文字處理軟體的功能和用法、計算機安全與犯罪的有關常識最感興趣,而對計算機文化與信息化社會、與計算機應用相關的道德與法規介紹、計算機的概念和發展史、軟體與知識產權保護、計算機中的信息表示、網路教學與遠程教育等內容沒有很大興趣,可以看出,文科學生希望老師多講一些可以表現自己創造力和個性的、實用的或者學 生比較關心的內容。
四、教師的教學經驗以及對計算機基礎課程教學改革的看法
我們用e-mail采訪了十幾位擔任本計算機基礎課程的主講教師,劉楚雄、陳泓捷、唐大仕、龍曉苑、李文新、胡俊峰、代亞飛、高軍、王騰蛟等老師認真地回答了問卷,並提供了教學大綱等信息。他們其中有教學經驗豐富的老教授,也有具有創新精神的青年骨幹教師;有計算機專業的老師,也有其他學院擔任本院計算機基礎課程教學任務的老師。
1. 教學經驗
歸納起來,各位老師的教學經驗有以下幾個方面:
(1)注重調動學生的積極性。可以讓學生做一些小程序,提高學生的動手能力和信心來激發學生的積極性;可以增加鼓勵措施,如請學生講課,適當表揚,出一些需要創造性思維的作業;可以引入一些能用計算機解決的智力游戲,讓學生積極思考;選取例子時也可以選一些短小簡潔的問題,先提出問題,然後求解,容易集中學習注意力,等等。
(2)講課內容注重實用性和具體性。學生對實際中存在的問題更容易感興趣;對具體的例子比抽象的講解更容易接受。可以通過讓學生使用計算機去解決現實生活中的一些問題,因為學生大都希望能學以致用,能夠解決一些具體的問題。他們在解決具體問題的過程中同時也學會了解決問題的方法。
(3)多與學生交流。可以在課程網站上建立留言板,在BBS上答疑,鼓勵學生與教師和助教多交流,等等。這樣能夠發現學生的疑問甚至自己的不足,及時調整。
(4)選用內容新穎、編制優良的教材,參閱精品課程網站。
2. 教學改革設想
談到計算機基礎課程教學改革,老師們提出如下較為一致的看法:
(1)不同專業的計算機基礎課程側重點應該有所不同,強調針對性。有些工程性強的專業涉及到的科學計算比較多,藝術類專業可能會注重多媒體處理。不同專業的計算機基礎課程應該包括針對該專業特點的內容。
(2)調整必修課和選修課的比例。有的老師認為,對於某些理科專業來說,計算機基礎課程必修課應該包括計算概論、數據結構與演算法,而像軟體工程和Windows程序設計等課程可以作為選修課;對另外一些很少涉及編程的理工專業,必修課可以只包含計算概論,而數據結構與演算法等作為選修課。對於文科專業來說,「計算機基礎」應作為必修課,而程序設計可以作為限選課或者非限選課,演算法與數據結構可以作為非限選課。
(3)教學內容應該突出應用性。希望學生能夠學以致用,但是從學生的反應和老師的意見來看,在這方面仍有很大的努力空間。
五、結論
總的來看,我們的教學實踐是成功的,但是也有一點不足。可以總結為以下幾點:
1. 教學效果的評價
從學生對每門課程的認識來看,我們取得了很好的教學效果。學生認為課程中重要的知識點基本上和教學實踐中重點講解的內容一致。不過,在文科專業,學生希望可以學到更多的關於多媒體(動畫、視頻等)處理的實用技能。
2. 師資力量的評價
無論從計算機專業還是從非計算機專業來看,師資力量都基本能夠滿足要求。絕大多數理科學生認為教師和助教對學生認真負責,大部分文科學生也持相同看法。同時我們也注意到,理科非計算機專業學生雖然大部分認為老師很敬業,但是不是十分認可其能力。另外,計算機專業的計算概論課程需要增加助教。因此,提出應該很好解決教師的進修與充電的問題。
3. 課程安排和內容方面
老師和學生反映較多的問題是應該給不同學院甚至專業開設不同的計算機課程,教學內容應該和專業領域結合得更緊密一些。例如對於編程,不同專業要區別對待。有的學院除個別專業方向須掌握編程方法外,其餘均是對現在已有程序的應用;而另外一些專業卻對程序設計能力有較強烈的要求。再如對於美術相關的專業,可能會對電影製作方面有較高的要求。
4. 教學方式
老師如果能注重調動學生的積極性,教學效果可能會更好。可以講解或布置有挑戰性或應用性或有趣的任務、問題或習題,增加獎勵和鼓勵措施,講授知識時能夠做到理論聯系實際,努力使該課程生動有趣且易懂等來調動學生的積極性並吸引學生的注意力。
5. 作業要求
大部分學生認為課程學習難度適中,能夠獨立完成作業,課程負擔也比較合適。不過,在理科專業,數據結構課程作業偏多,而計算概論負擔相對較輕。
全國高等學校教學研究中心
㈡ 408計算機學科專業基礎綜合 都是什麼啊
408計算機學科專業基礎綜合是報考計算機專業考研的專業課,滿分是150分,其中包括四部分內容,分別是數據結構、計算機組成原理、操作系統和計算機網路。具體的考試題型包括單選題和綜合應用題兩種,分別是80分和70分。
408計算機專業基礎綜合試卷是全國統考,如果向更深入了解具體知識點可以購買一本2013的計算機考試大綱進行了解和復習。
㈢ 計算機學科專業基礎考什麼
計算機學科專業基礎考計算機組成原理、操作系統、數據結構與演算法、計算機網路、計算機體系結構等多個方面。
1、計算機組成原理
計算機組成原理是計算機科學中最基礎的一門課程,它主要涵蓋了計算機硬體的基本組成部分,包括中央處理器(CPU)、存儲器、輸入輸出設備等。考試中通常會涉及到計算機的組成、運作原理、指令集以及各個部件的功能和工作原理等知識點。
5、計算機體系結構
計算機體系結構是計算機科學中的一個重要分支,它主要研究計算機硬體和軟體之間的介面以及它們的交互。考試中通常會考查計算機體系結構的基本原理、指令集架構、流水線、超標量處理器、多核處理器等相關知識點。
計算機基礎的考試知識點非常廣泛,需要學生具備扎實的理論基礎和廣泛的知識面。在備考過程中,建議學生注重理論的學習和實踐的練習,同時結合實際應用場景進行思考和探究,才能更好地掌握計算機基礎的知識點。