申東 李強 楊桂芹
摘 ?要: 基于工程教育專業認證的“C語言程序設計”課程,在教學過程中應實現以學生為中心,教學目標應以提升能力為導向,教學效果應益于解決復雜工程問題。因此,對“C語言程序設計”課程的教學內容、教學方式和教學評價的改革進行了探討,旨在提高學生的自主學習能力、創新能力和團隊協作能力。
關鍵詞: C語言程序設計; 工程教育專業認證; 教學改革; 教學評價
中圖分類號:G642.0 ? ? ? ? ?文獻標識碼:A ? ? 文章編號:1006-8228(2020)06-64-03
Abstract: Engineering education accredited course of "C Language Programming" should be student-centered in the teaching progress, the teaching goal should be oriented to enhance the ability, and the teaching effect should be beneficial to solve complex engineering problems. Therefore, it is discussed in this paper that the reforms of teaching content, teaching method and teaching evaluation for the course of "C Language Programming", in order to improve students' abilities of autonomous learning, innovation and teamwork.
Key words: C language programming; engineering education accreditation; teaching reform; teaching evaluation
0 引言
工程教育專業認證是1989年發起的一種國際通行的對高等教育機構所開設的工程類專業教育所實施的制度,這一制度的產生,是為了實現工程教育國際互認以及工程師資格國際互認這一條件的重要基礎。我國的教育部于2006年成立了全國性工程教育專業認證專家委員會,在2012年成立了中國工程教育認證協會(籌),對原來的工程教育專業認證中的通用標準做出適量修改,力求靠攏《華盛頓協議》認證標準[1]。
工程教育專業認證提倡教學以學生為中心,教學目標以提升能力為導向,教學效果致力于解決復雜的工程問題,主要圍繞著學生的畢業要求展開對課程體系的改革,為保障專業教育活力和教育質量,需要持續改進機制,不僅表現在師資配置,而且還要體現在課程教學,專業課程體系設置。
“C語言程序設計”是通信工程專業的學生必修的一門基礎課程,這門課程的具有較強的實踐性,經過學習C語言,可以更好的提升學生對于掌握編程方法、創建合理編程思維構架、提升自身軟件開發的能力。然而,即使是計算機專業的學生,在學習C語言的過程中,仍然不能很好的掌握和理解C語言,對于處理實際的專業問題存在著一定的困難,而且,受到傳統教育模式的影響,對于C語言的學習仍然是“老師講,學生聽”的模式,實際問題的解決和編程并沒有得到重視,學生被動學習,為了考試而學習,很少有學生主動地、創造性地去解決問題。
基于工程教育專業認證的“C語言程序設計”教學改革的宗旨是打破傳統的教學方式,融入新的教學理念、教學方式,通過新工具、新技術以及新的交流平臺,提高學生的學習興趣,指導學生從軟件工程思維出發,對項目先做需求分析、系統設計,再程序編碼和系統調試,最終完成項目從設計到開發的整個過程。這個過程旨在培養應用型人才,打破企業找不到符合自身需求的人才的現狀。
1 通信工程關于“C語言程序設計”教學改革思路
1.1 教學過程中以學生為中心
工程教育專業認證的核心理念是在教學過程中以學生為中心[2],根據這一新提出的標準,要求教師在實際的教學過程中,注重學生學習的過程以及成果,產生利于學習的教學指導,激起學習C語言的興致。
計算思維是運用計算機科學的基礎概念進行問題求解、系統設計以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動。C語言在學習的過程中,旨在培養學生的計算思維,通過計算思維的形成,對基礎問題進行分析和解決,教師需要引導學生建立計算思維,促使學生可以具體的、客觀的解決問題,依據社會對學生的期望制定合理的教學內容。教師需把計算思維貫穿于整個教學過程中,要求學生先給出算法和程序流程圖,理清思路和步驟,然后再編程。由于C語言程序設計具有高度的自由性,且每個學生的計算思維的形成存在一定的差異,會導致學生對于程序的設計有差異,這就需要將學生作為個體,尊重每一個學生的差異,使得每個學生都有平等學習的機會。
1.2 教學目標以提升能力為導向
“C語言程序設計”課程的教學目標是提高學生分析問題、編碼求解能力、軟件工程思維水平以及計算思維,教學應該將目標作為導向,教師在教學的整個過程中應以提升學生能力和素質發展為根本要求,促進學生形成結構化程序設計思維。由于目前課堂講課大多圍繞著教學大綱,往往偏向概念的講授,從而漏掉了學生自身的實踐水平,所以針對傳統教學存在的缺陷,提出了基于產出的教學模式[3],重點關注學習過程中的學習成果,在學習過程中,要求學生對自己負責,自主學習,教師更多關注學生基本能力的提高,使學生產生良好的學習動力,加深學習和教學之間的聯系,并逐步進行完善以及改進教學過程。
1.3 教學效果益于解決復雜工程問題
“C語言程序設計”作為通信專業的基礎課程,學習階段學生離畢業時間較遠,教師有責任培養學生解決復雜的工程問題的能力。用C語言作為基本工具對課堂上復雜知識和生產實際中復雜問題進行求解是“C語言程序設計”課程應當承擔的教學任務。“C語言程序設計”理論知識過多,學生對于枯燥的語法結構難以理解,工程教育專業認證模式就是在系統的理論指導下實現水平、素質提升、基礎的一體化培養,教學內容設計應當注重知識的綜合性與應用價值,讓學生參與解決實際的工程問題,提高C語言的應用能力,將一個完整工程貫穿教學始末,在強化知識的同時,可以讓學生更好的了解實際解決復雜工程問題的過程和基本方法,力圖將知識點融會貫通。
2 工程教育專業認證在“C語言程序設計”教學改革的實踐
2.1 教學內容
在實際教學過程中,建議將一個學期分成若干個學習階段,同時確定階段性目標,教師在每個階段末回顧自身教學內容是否完成,然后根據學生課堂理論、課堂實踐、作業以及實驗報告等,確認學生完成情況,并幫助學生順利完成階段性目標。
課堂教學可分為兩個階段:第一個階段主要包括分支結構、數組、指針和字符串、循環結構、結構體與鏈表、文件、函數、C語言圖形函數等8個大的分類的學習,在這一階段強調基礎的學習及應用,將這八個大分類作為八個任務驅動,而這八個任務驅動是由課程項目分解成的子模塊[4]。在設置任務時需要關注內容之間存在的關聯性,讓學生自主積累任務所需要的基礎資料,為第二階段打好基礎;第二階段需要使學生置身于解決實際復雜問題的環境中,提出一個工程項目,這個項目旨在學生近一步熟悉項目開發流程,培養學生對于軟件工程的設計思想。通過“做中學”這一戰略,訓練學生從創新的角度出發,了解計算機系統各個部分之間存在的聯系,注重知識的相關性。
2.2 教學方式
基于工程教育專業認證的“C語言程序設計”突出強調以學生為中心,學生正處于接受新事物、新思想、新方法的階段,需要改變傳統的教學理念和方法,提出項目化教學模式,首先突出的是“自主學習”,其次要表現為教學過程中教師指引學生學習基礎內容,除此之外要實踐動手,在教學過程中盡可能調動課堂的活躍氛圍,在輕松的學習環境下學習知識點,使學生對于C語言的學習產生濃厚的學習興致。
教學方法主要包括基礎內容教授、實驗教學和學生自主學習。對于課堂教學內容,通過講授章節的背景知識,清晰的明白C語言在整個學科體系的位置及作用,對于完善學生自身知識體系有很大的幫助,在進行與之相應的實驗教學時引入1個課程項目,其中涵蓋所有基本知識點,將這個課程項目可以劃分為8個子項目,使教學任務通過子項目展開,提高教學效率,豐富教學模式。在進行實驗教學時,將學生分組,每組5-7個人,由學生自主選擇一名組長進行任務的分配,定期組織小組成員討論,進行資料匯總,并督促小組成員按時完成任務,激發學生的創新思維以及學習積極性,在每一個子項目完成之后,要求學生總結實驗過程,通過實驗報告呈交教師查閱。
在每學期末,學習完所有基礎知識后,開展為期十天的課程實訓,這是一種自主完成設計內容的新型課程實訓的教學模式。一人一題,題庫由教師提出,并由學生自行選擇,題庫內容可包括設計信息管理系統、數學計算、圖形處理、基于C語言的嵌入式開發等。學生需要在十天之內進行題目分析、原型的迭代開發,在此期間教師對學生提供適當指導,跟蹤學生狀態及效果,使學生強化對C語言的學習。
項目化教學模式優于傳統教學模式的原因在于:
⑴ 項目過程完整,學生的學習目標明確且處于主導位置,師生共同參與項目的實現,益于師生之間的交流,促進共同進步;
⑵ 項目實踐與理論知識緊密聯系,有利于提高專業水平;
⑶ 項目模塊化可以更好的提高個人專業水平和團隊合作能力;
⑷ 項目結果的評價形式更加全面且合理[5]。
2.3 教學評價
傳統“C語言程序設計”的考核標準是“平時成績+期末考試成績”,比例為3:7,由于期末考試成績的占比較高,大多學生是在考前通過背知識點和經典案例來應付考試,導致學生對基本知識點、課程體系掌握不全面,在實際解決問題存在盲區,并不能考察學生計算思維和工程應用的能力。工程教育專業認證的“C語言程序設計”對基礎知識點考察的同時,還需要考核學生解決實際復雜工程問題的能力。
對于傳統的考核機制的缺陷,應該建立多元化的考核機制,可以將原有的筆試機制的占比減小,將項目的實踐能力和團隊協作能力融入考核機制中。例如,子項目的實踐能力和團隊協作能力占40%,期末考試占40%,實訓成績占20%[6]。
3 總結
基于工程教育專業認證的“C語言程序設計”教育模式是為了激發學生學習和探索的激情,通過項目的引入,實現理論與實際的聯系,在教學過程中以學生為中心,提高學生團隊協作能力和實際解決問題能力,使學生可以更好地適應未來的社會環境。C語言作為一門操作性極強的計算機編程語言,對于學生后續學習相當重要,通過對教學內容、教學方式是和教學評價的改革,充分調動學習積極性,提高教學質量,使這門學科更具科學成效性。
參考文獻(References):
[1] 張延亮,康國棟,周清平.工程教育認證標準視角下軟件工程專業課程教學改革探索與實踐[J].煤炭高等教育,2018.36(5):117-121
[2] 羅衛敏,王令.符合工程教育認證標準的C語言課堂教學改革[J].計算機時代,2017.2:79-81
[3] 齊亞莉.基于工程教育理念的《C語言程序設計》課程教學改革方案[J].北京印刷學院學報,2017.25(7):102-109
[4] 曹羅生,李寧.淺析“C語言程序設計”課程的CDIO工程教育模式[J].科技咨詢,2017.15(29):184-187
[5] 王曉娟,黃韞韜,劉世民.CDIO工程教育模式下項目化課程教學的研究與設計[J].佳木斯大學社會科學學報,2015.33(6):190-192
[6] 張淑萍.基于CDIO工程教育理念的C語言程序設計教學改革[J].科技視界,2017.3:41-47