楊菲
摘要:在當前職業(yè)教育改革的背景下,為了提高職業(yè)教育課堂教學的質(zhì)量,同時也為了提升學生的IT職業(yè)素養(yǎng),很多職業(yè)院校進行了項目教學的嘗試和研究。該文詳細介紹了基于PHP程序設計課程的項目課程的開發(fā)過程。
關鍵詞:項目課程;PHP程序設計;項目教學;高職
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2015)26-0132-02
當前,為了提高高職高專課堂教學的質(zhì)量,進一步深化職業(yè)教育的教學改革,我院在“雙三元”辦學理念的指引下,進行了一系列的教學改革。其中最重要的是為了加強學生的實訓,把教學周分成了前八周,后八周,其中第九周和第十八周為專門的實訓周,專業(yè)可自行設置相應的核心課程由學生完成實訓項目。同時,學校大力加強對教師的教育教學改革的培訓,專門組織了針對全校教職工的“行動導向”培訓班,開辦了幾期。同時,還邀請姜大源教授到學校作報告。一系列的培訓給教職員工帶來了強烈的思想和心理沖擊,也為我校的職業(yè)教育改革指明了方向。
為了貫徹“以學生為中心”的職業(yè)教育改革方向,通過不斷的教育教學實踐探索,同時結(jié)合IT類課程的特點,特別是程序設計類課程的特點,這一類的課程采用項目教學法無疑是行之有效的教學方法。項目教學法就是在老師的指導下,將一個相對獨立的項目交由學生自己處理,信息的收集、方案的設計、項目實施及最終評價,都由學生自己負責,學生通過該項目的進行,了解并把握整個過程及每一個環(huán)節(jié)中的基本要求。職業(yè)教育項目課程是一種以工作任務為中心選擇、組織課程內(nèi)容,并以完成工作任務為主要學習方式的課程模式。以下我就詳細介紹基于PHP程序設計課程的項目課程的開發(fā)過程。
1 PHP程序設計課程介紹
本課程是我校計算機應用專業(yè)的一門專業(yè)核心課程,也是一門實踐性很強的課程。課程主要講解PHP的相關知識及PHP在WEB應用程序開發(fā)中的實際應用,通過具體案例,使學生鞏固數(shù)據(jù)庫、網(wǎng)頁制作等專業(yè)知識,更好地進行開發(fā)實踐。該課程選定當前流行的應用網(wǎng)站開發(fā)為職業(yè)方向,以實用的應用網(wǎng)站系統(tǒng)開發(fā)的實際工作過程為導向,通過一些典型的設計任務,讓學生掌握PHP基本語法,使用開源系統(tǒng)快速搭建、修改實用的網(wǎng)站。本課程的預備課程是《網(wǎng)頁設計與制作》、《DIV+CSS》等,該課程也是《PHP項目實訓》的預備課程。該課程在本專業(yè)課程中的地位如圖所示:
2 PHP程序設計采用項目教學法的可行性分析
PHP程序設計在語法上與C語言很類似,我校計算機專業(yè)的學生進校第一學期就開設了C語言,相對基礎比較扎實,同時,在學習PHP程序設計之前學生已經(jīng)學習了DIV+CSS網(wǎng)頁設計,JAVASCRIPT程序設計等相關課程,這些都為我們后面開展項目教學打下了基礎。
同時,實施項目教學也是我們提高學生的學習興趣必然要求。高職高專的學生普遍存在學習基礎差,學習自主性不強,上課容易走神。所以我們采用項目教學法,通過實用的項目首先吸引他們的眼球,以此來提高他們的興趣,后面講解起來就會更加輕松。
3 項目的選擇
[項目\&項目描述\&相關學習內(nèi)容\&項目1 制作一個注冊表單\&使用可視化編程工具,譬如Dreamweaver創(chuàng)建一個表單,要求表單中包括常用的表單元素,如:文本框、密碼框、單選按鈕、復選框、文本域、按鈕等,還包括文字和圖片。要求寫出PHP代碼,在點擊提交按鈕后顯示各控件內(nèi)輸入的值。\&PHP簡介、表單元素
、基本語法、表單程序控制、模塊化程序設計、 正則表達式\&項目2 編寫一個網(wǎng)頁,實現(xiàn)簡單計算器\&請使用PHP語言,在網(wǎng)頁中實現(xiàn)簡單計算器,其中加、減、乘、除可選擇,點擊等號出結(jié)果。\&流程控制概述 、分支結(jié)構(gòu) 、 循環(huán)結(jié)構(gòu) 、PHP中的函數(shù) \&項目3 編寫一個網(wǎng)頁實現(xiàn)輸入數(shù)的排序\&請使用PHP語言,在網(wǎng)頁中實現(xiàn)對5個成績數(shù)據(jù)的排序,然后實現(xiàn)三組數(shù)據(jù),分別為學號、姓名、分數(shù)一共15個數(shù)據(jù)的排序。\&一維數(shù)組,二維及多維數(shù)組輸入及冒泡排序,多維數(shù)組的排序\&任務4 實現(xiàn)文件上傳功能\&在任務一的表單基礎上實現(xiàn)文件上傳的功能。要求大家要結(jié)合具體代碼實例,修改、編寫圖片上傳功能的代碼,看懂程序后你可以修改相關文件類型就可以實現(xiàn)其他文件的上傳功能。
實現(xiàn)完一個文件框的傳功能后,接著實現(xiàn)四個同時上傳,最后結(jié)合javascript前臺代碼實現(xiàn)動態(tài)增加文本框。\&文件系統(tǒng)概述 、目錄的基本操作 、文件的基本操作、文件的上傳與下載文件系統(tǒng)項目實例,復習多維數(shù)組,javascript知識
\&項目5 實現(xiàn)與數(shù)據(jù)庫的連接以及在網(wǎng)頁中顯示數(shù)據(jù)\&在mysql中建立學生表,實現(xiàn)數(shù)據(jù)庫的連接,在網(wǎng)頁中顯示學生表中的數(shù)據(jù),優(yōu)化代碼,釋放內(nèi)存,把功能寫成函數(shù)。\&Mysql數(shù)據(jù)庫,連接數(shù)據(jù)庫,增,刪,改查詢數(shù)據(jù)庫,關閉數(shù)據(jù)庫,數(shù)據(jù)庫函數(shù)的編寫。\&]
[項目6小型完整項目
新聞發(fā)布系統(tǒng)\&數(shù)據(jù)庫連接、關閉,連接關閉函數(shù)的制作。\&函數(shù),數(shù)據(jù)庫連接,\&新聞的發(fā)布、刪除、修改、新聞的詳細信息,讀取數(shù)據(jù)庫中新聞類別到下拉框中,
評論的發(fā)表,修改,刪除\&數(shù)據(jù)庫增刪改查
,文件上傳\&新聞的瀏覽和評論的瀏覽但條數(shù)較多時需要分頁。在分頁顯示時,需要理解分頁的算法和分頁鏈接的生成方法。\&分頁類模塊 、分頁顯示模塊程序調(diào)試\&學習session,cookies,實現(xiàn)記住用戶名、密碼。登錄功能的數(shù)據(jù)庫實現(xiàn)\&session,cookies,\&項目7 完善新聞發(fā)布系統(tǒng)的功能\&增加新聞的類型,新聞的分類顯示,熱門新聞排行榜\& 數(shù)據(jù)庫,查詢\&項目8 自主開發(fā)一個小型的系統(tǒng)(學生管理系統(tǒng)或人事管理系統(tǒng))\&要求學生從項目啟動、需求調(diào)研、概要設計、詳細設計、編碼實現(xiàn)、程序部署和項目結(jié)束去開發(fā)一個小型的CMS系統(tǒng),其中還包括一些評審工作,譬如:需求評審、概要評審、驗收評審,另外,還包括測試工作,譬如:測試用例的編寫、代碼測試和功能測試等工作。
學生分組開發(fā)學生管理系統(tǒng)和人事管理系統(tǒng),實現(xiàn)學生或人員的增、刪、改、查,后逐步完善學生管理系統(tǒng)增加選課管理,人事管理系統(tǒng)增加工資管理系統(tǒng)。\&web軟件開發(fā)流程概述 、需求分析 、 系統(tǒng)功能預覽、數(shù)據(jù)庫設計、 系統(tǒng)架構(gòu)、 常用的功能模塊開發(fā)\&項目 9 京東商城項目(此項目在實訓周完成)\&
包括登錄界面,驗證碼程序的開發(fā),添加,刪除商品,分頁顯示等\&數(shù)據(jù)庫,數(shù)據(jù)庫連接\&]
通過以上九個項目的實訓,從簡單到復雜,通過這樣的層層深入,學生對PHP項目的開發(fā)有了深入的了解,對其中牽涉的知識點也能夠通過項目的更好的理解。其中項目一主要讓學生熟悉表單元素,項目二主要讓學生熟練使用流程控制語句,項目三主要是了解數(shù)組,項目四主要是講解文件上傳知識點,項目五講解數(shù)據(jù)庫連接。通過這五個項目的講解,我們就可以進入到一個小型完整項目的開發(fā)了。
以項目六新聞發(fā)布系統(tǒng)為例,我們首先完成的是新聞的發(fā)布,那就牽涉我們前面學習的項目一制作表單,項目四文件上傳,還有項目五數(shù)據(jù)庫操作。接下來是新聞的瀏覽,修改和刪除。然后是做評論的增、刪、改、查。這其中講解一個知識點就是分頁,后面再講解session、cookies,進一步完善登錄功能。同時,為了讓學生更好地了解對數(shù)據(jù)庫的操作,我布置了增加新聞的類型,新聞的分類顯示,熱門新聞排行榜三個小程序項目讓學生完成。在實訓周,學生主要是完成項目9京東商城項目,同時自己制作一個項目就是項目八主要是學生管理系統(tǒng)和人事管理系統(tǒng)二選一。
同時,為了讓學生以后更好地適應公司開發(fā)的要求,提高學生的IT職業(yè)素養(yǎng),在學生的項目實踐過程中,我們盡量以公司的編程規(guī)范去要求每個學生,比如代碼的縮進,“{}”的對齊等一些問題。為了讓同學以后能夠適應大型項目的開發(fā),在項目中特別強調(diào)了注釋和文檔的編寫,一定要為代碼添加注釋,增強代碼的可讀性和可維護性,盡管目前我們的代碼還不長,但要讓他們養(yǎng)成良好的習慣。對于文檔的編寫和閱讀,對于他們可能跟寫代碼一樣難,但也一定要堅持編寫。一個大型項目的開發(fā)往往必須要依靠團隊的力量,所以一個程序員一定要學會交流,交流一方面是要學會寫各種文檔,另一個方面則是要錘煉自己的性格。通過這些方面的努力,學生項目開發(fā)的能力大大增強,IT職業(yè)素養(yǎng)也得到很大提高。
4 課程考核方式
1)成績確定
總成績=平時成績+課堂項目實踐+項目演示+其他
2)成績比例
由教師和學生干部評定紀律得分。\&10%\&項目實踐\&根據(jù)實踐完成的時間、功能的完善、程序是否有創(chuàng)新,由教師評定學生的成績。\&40%\&自主項目實踐\&由教師根據(jù)項目匯報情況給分\&50%\&]
作為老師,對于每一個項目,我都有詳細記錄學生的完成情況,包括記錄前三名做出來的同學,給予每個同學相應的加分。同時,對于同學做出來的程序,我選擇其中有代表性的程序,在課堂上講解,或由學生進行講解。最后我根據(jù)同學在每一個項目中的表現(xiàn),以及側(cè)重在最后的自主項目實踐開發(fā)匯報情況,給每一個同學給出了這門課程的成績。
5 結(jié)束語
通過對PHP程序設計課程項目教學的實施,使得學生快速地掌握了項目開發(fā)的技巧和技能,也使得他們能更好地適應公司對崗位開發(fā)的要求。通過對幾屆學生就業(yè)的走訪調(diào)查,學生從事PHP開發(fā)的同學也比較多,用人單位對我們的學生也較為滿意,這也充分說明項目教學是行之有效的。