馬德云
摘要:斯坦福大學(xué)的課程《編程方法》是憩工程學(xué)院課程開(kāi)放計(jì)劃中的一門(mén),本文對(duì)其踐行介紹,包括課程的背景,基本情況介紹,課時(shí)的安排,作業(yè)布置、作業(yè)要求及批閱標(biāo)準(zhǔn),并給出了最近一次的教學(xué)大綱。
關(guān)鍵詞:編程方法 教學(xué)大綱 公開(kāi)課
【中圖分類(lèi)號(hào)】G642;G431
一、背景
網(wǎng)易公開(kāi)課中,有一門(mén)來(lái)自斯坦福大學(xué)的課程《編程方法》(Programming Methodologies),這是斯坦福工程學(xué)院課程開(kāi)放計(jì)劃中的一門(mén),免費(fèi)提供他人觀看,我因而得以收看學(xué)習(xí)。整個(gè)課程是課堂直錄,真實(shí)地再現(xiàn)了課堂教學(xué)的整體過(guò)程,在學(xué)習(xí)的過(guò)程中,通過(guò)課程主頁(yè)幾乎可以享受到與斯坦福大學(xué)學(xué)生同等的學(xué)習(xí)待遇。
二、課程介紹
本課程面向斯坦福大學(xué)所有專(zhuān)業(yè)的學(xué)生,無(wú)論是本科生還是研究生都可以休學(xué)這們課程,只是獲得學(xué)分不同。課程是以計(jì)算機(jī)方面知識(shí)零基礎(chǔ)為起點(diǎn),教學(xué)內(nèi)容不是局限在單純的編程范圍,不只是學(xué)習(xí)程序語(yǔ)言的結(jié)構(gòu),而是以軟件工程思想為基點(diǎn),教導(dǎo)學(xué)生,如何學(xué)習(xí)軟件系統(tǒng)開(kāi)發(fā)實(shí)用思想,未來(lái)的學(xué)生可以將這些思想應(yīng)用到實(shí)踐之中,軟件工程思想是這門(mén)課程的重中之重。
1 課程主頁(yè)(www.stanford.edu/class/cs106a)
課程主頁(yè)提供所有課程資料,包括電子版講義、作業(yè)所需的材料以及課程通知等等。當(dāng)然,課堂上還是會(huì)發(fā)紙質(zhì)的講義。
2 課時(shí)安排
每周四次,課堂教學(xué)三次,第四次是小組討論50分鐘,共30次課,每一次課都將進(jìn)行考勤記錄。
3 郵件和注冊(cè)
小組討論必須經(jīng)過(guò)注冊(cè),學(xué)校的選課系統(tǒng)給出幾天的時(shí)間段,另外要求學(xué)生明白,電子郵件,將成為本課程互動(dòng)的主要途徑。
4 教材及教學(xué)軟件
課程教學(xué)使用的語(yǔ)言是JAVA,制定教科書(shū)有兩本,即課程導(dǎo)論《卡雷爾機(jī)器人學(xué)JAVA(作者 埃里克 羅伯茨)》,課本《JAVA語(yǔ)言的科學(xué)與藝術(shù)》。
斯坦福大學(xué)量身定制的Eclipse軟件,以及JAVA軟件。這里Eclipse軟件是在潛4次課程中,教導(dǎo)學(xué)生進(jìn)行編程入門(mén)的時(shí)候所使用的,這樣一個(gè)安排,使得學(xué)生比較容易地逐步進(jìn)入JAVA編程的學(xué)習(xí)。
6 作業(yè)
7次變成作業(yè),作業(yè)的難度逐步增大,分值也將相應(yīng)增加。小組長(zhǎng)將對(duì)會(huì)對(duì)小組的每一位學(xué)生仔細(xì)批閱評(píng)分,規(guī)定學(xué)生每周必須與小組長(zhǎng)有10-15分鐘的交流時(shí)間,也可以利用這個(gè)時(shí)間交作業(yè),以進(jìn)行互動(dòng)評(píng)分,這樣的交流,即可交流作業(yè)的閃光點(diǎn),提出改進(jìn)的意見(jiàn),學(xué)生也可藉此提出疑問(wèn),或得到更消息的信息。作業(yè)評(píng)分,也明確的標(biāo)準(zhǔn),并必須依據(jù)校方的行為準(zhǔn)則。每一次作業(yè)必須在下一次課前規(guī)定時(shí)間內(nèi)遞交完成,7次作業(yè),一共只允許2個(gè)寬限日,并要事前向首席助教提出申請(qǐng),否則,將以天數(shù)來(lái)降低期末最后的分?jǐn)?shù)級(jí)別。
7 期末分?jǐn)?shù)
編程作業(yè):45%;
期末考試:30%;
期中考試:15%;
參與小組討論 考勤等:10%
8 行為準(zhǔn)則
這里提出學(xué)術(shù)剽竊問(wèn)題,包括不得共享代碼,不得抄襲,一經(jīng)發(fā)現(xiàn),將訴諸校方,交由校方安規(guī)定處理,同時(shí),這里也有人性化的說(shuō)明,若請(qǐng)教助教、組長(zhǎng)或他人,表明出處是被允許的。
9 教學(xué)大綱
這里只節(jié)選其中一部分,完整的教學(xué)大綱可以直接上網(wǎng)查看(http://web.stanford.edu/class/cs106a/syllabus.html)。
三、總結(jié)
這門(mén)課程的學(xué)習(xí),讓我充分感受到這個(gè)教學(xué)團(tuán)隊(duì)嚴(yán)謹(jǐn)負(fù)責(zé)而又輕松活潑的敬業(yè)態(tài)度。課程主講教授是Mehran Sahami,主講教授強(qiáng)調(diào),本課程配備了很多教員,每年都對(duì)教學(xué)進(jìn)行改革,可以說(shuō)在這門(mén)課的教學(xué)上花了蠻多的功夫,目的是希望學(xué)生得到最好的學(xué)習(xí)效果。本人這幾年,也一直在關(guān)注這課程主頁(yè),內(nèi)容總有變化,這是一種教學(xué)中的潤(rùn)物無(wú)聲的教學(xué)改革。
參考文獻(xiàn):
【1】 http://web.stanford.edu/class/cs106a
【2】 http://v.163.com/special/programming/