何受倩
(广东科贸职业学院,广东 广州 510640)
基于企业网站项目的PHP高级编程的教学实施
何受倩
(广东科贸职业学院,广东 广州 510640)
PH P的优越性体现在其语法简单、易懂,容易入门,其运行速度快,开发周期短,还可实现跨平台。在PH P4后,PH P在面向对象方面有了很大的改进,它完全胜任用来开发大型商业程序,越来越多的大型网站选择使用PH P进行开发。PH P人才缺口大,学习和掌握好PH P,其就业前景非常可观。很多学校也相继开设了以PH P为主线的课程体系,如何让学生在短期内快速地掌握PH P开发技术,其中一个重要的因素是教师的教学实施过程,文章论述了以企业网站项目贯穿PH P高级编程的教学实施。
企业网站项目;教学实施;M VC模式;项目评估
PHP,是英文超级文本预处理语言Hypertext Preprocessor的缩写。PHP作为一门简洁、安全、高效和跨平台的Web开发语言,它和Linux、Apache、MySQL紧密结合,形成LAMP的开发黄金组合,不仅降低使用成本,还提升了开发速度。PHP应用程序的集成开发环境Komodo和Zend Studio,很好地实现了跨平台,满足最新的互动式网络开发的应用,PHP因而也成为Web技术最流行的语言之一。如:阿里巴巴、唯品会、YY语音等大型的互联网站都是使用PHP开发的。由于互联网本身的快速发展、不断创新的特点,决定了只有以最快开发速度和最低成本,才能取胜,PHP的必将成为未来Web开发领域的主流技术体系。
2.1 PHP就业与发展前景
在TIOBE 2016年1月编程语言排行榜中,PHP排名第四。由于PHP开发效率高、安全可靠、可跨平台等自身的优点,一方面,越来越多企业的Web项目使用PHP技术开发,PHP岗位人员的需求也越来越大。据统计,目前全球5000万互联网网站中,有60%以上使用PHP技术;国内80%以上的动态网站都是使用PHP开发;Alexa TOP500中国网站排名,有394家使用了PHP技术,比例为78.8%。另一方面,由于国内PHP人才贮备不足、培训体系不健全,以及国内Web开发人员对PHP的价值认识不够,近几年各类企业发布的招聘人才信息中对PHP人才的需求超过60000名,但应聘累计人数大约只有6000名,人才缺口达到10:1。可见,PHP人才缺口是非常大的,学习并掌握好PHP,其就业前景是非常可观的。
2.2 PHP的优势
PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法。用PHP做出的动态页面与其它编程语言相比,PHP是将程序嵌入到Html文档中去执行,执行效率比完全生成Html标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。最重要的是PHP可以用C、C++进行程序的扩展。
和ASP相比,PHP兼容性较好,ASP只能在WINDOWS机器上使用,PHP可以适用于各类操作系统的服务器,特别适合在互联网广泛运用的LINUX系统;和JSP相比其入门容易,语法简单,适合自学。
3.1 PHP课程体系设置
大多数高职院校是这样开设PHP课程体系的:第一学期开设“网页设计”,第二学期开设“PHP程序基础”和“网络数据库”,第三学期开设“PHP高级编程”。“PHP程序基础”课程介绍PHP的基本语法;“网页设计”课程介绍HTML的基本元素和网站的静态页面设计;“网络数据库”课程介绍标准的SQL语句、数据库的基本知识以及数据库的日常维护操作。而“PHP高级编程”则是囊括了以上三门课程的内容,它是一门综合了网页设计、数据库,同时支持面向对象与过程,并可向下兼容的课程。
3.2 PHP高级编程的教学思路
教学内容结构要比教学内容本身更重要。在第一次课上可以用思维导图或关系图等将课程内容框架呈现给学生,这有利于学生更好地把握课程的整体架构。
图1 PHP高级编程课程所涉及的内容
“PHP高级编程”课程所涉及的内容如图1所示。左边的三个图形表示了“PHP高级编程”的先修课程。在“PHP高级编程”课程教学中会涉及到PHP基本语法、Html页面元素及分页技术、数据库设计、数据库连接以及查删改等编程实现。除此之外,还有面向对象特征、MVC设计模式等。
3.3 PHP高级编程课程教学实施过程
3.3.1 项目教学准备阶段
PHP高级编程教学按项目开发的步骤来展开,其效果比传统的教学模式能取得更好的效果。首先是项目准备阶段。教师可以通过一些小案例来给学生复习PHP基本语法,强化SQL操作数据库的命令。接着,介绍PHP开发环境(如:Appserv、Zend Studio或NetBeans)。搭建后开发环境,要让学生知道,开发的项目是可以部署到任意PHP服务器的(如:appserver或wampserver都可以),IDE也可以任意选用,它们是可以迁移、互相替换的。
3.3.2 项目教学实施阶段
项目教学实施阶段可分为五个步骤:
(1)分组准备阶段。按3-4人为一组,以组为单位进行网站项目开发,每个组的网站项目应各不相同。如果选题一样,最后作品风格和代码也不能雷同。
(2)寻求企业项目。以小组为单位,小组成员自己联系企业,确定网站项目选题。确定选题对学生来说是一次挑战,也是一个很好的锻炼。选题各不相同,可以是书店、蛋糕店、电脑销售店、学校协会、政府部门等等。
(3)确定小组内组员分工。组员分工可以采用模拟公司来进行,如项目经理、前端设计人员、数据库数据人员、后台开发人员等。每个岗位人员负责不一样的工作任务,如页面设计、CSS、数据库设计、后台编码等。在确定好组员分工后,小组要设计“需求分析调研问卷”对企业进行需求调研,“需求分析调研问卷”有助于帮助用户确认需求,可以通过面谈、电话或网上交流等形式方便地进行,以便更好地确定网站主题和网站风格。
(4)完成“网站系统架构图”、“网站功能模块划分(或系统用例图)”和“数据库及表结构设计”。每小组要把以上的资料提交并经教师审批后才能进行下一步的代码设计环节。因为根据软件项目开发原则,问题要越早发现越好,越到后期发现的问题所花费的人力物力越大。
数据库设计环节也是学生出现较多问题的环节,根据数据库设计规范,要求达到3NF(范式)。但这对学生来说有一定难度。在具体的数据库设计中,很多组都没有达到3NF,也就是没有消除数据冗余,这在进行记录的删除或插入时将会导致数据的不一致。对不合理的数据库,要求学生按照修改意见重新设计,再次提交,审核通过后才能进入下一阶段。一般来说,经过返工修改后基本都能达到3NF要求。
(5)编码阶段。将功能与UI(用户界面)相分离,这有利于系统的扩展和维护。PHP的MVC框架有很多,如Yii、CodeIgniter、ThinkPHP等都是目前流行的框架,其原理都是MVC模式。利用MVC进行Web页面的开发,可以非常方便地编写Web程序。MVC架构图如图2所示。
图2MVC架构图
MVC有三层架构,用户界面包也称为视图view,主要是PHP页面(如登录页面login.php、注册页面reg.php等);业务逻辑包是业务逻辑层,也称为controller,起中间桥梁作用,如当运行login.php时,由post方法将数据传到dologin.php页面(dologin.php文件里包含有登录验证逻辑),实现了登录。(注册原理相同)。在编码阶段学生容易出现的问题是:
(1)目录路径问题
如:header(location:../error.php?)指包含此文件或目录的上一级目录,跳到上一级目录中查找error.php;header(location:error.php?)指包含此文件或目录的同一级目录上查找error.php;header(location:./error.php?)表示根目录,返回根目录中,查找文件error.php。
(2)数据库访问层代码的整合与优化问题
在数据库访问层学生编写的代码是比较乱的。此时,通过将公共资源、公共函数抽取到一个单独的comm.php文件中;进行数据库服务器参数配置;将用户表操作程序函数进行整合,通过这三个步骤来完成数据访问层代码的整合与优化。
(3)没有加入会话session技术和error错误处理
学生开发的项目,为了方便实现,他们在用户登录后,并没有加入会话session,以及在登录出错时,没有设计error页面进行处理。在实际项目开发中,比如某个帐号登录了,在登出前是需要保存会话的。
项目评估由三方进行:小组间评价、组员内评价、教师评价。每组组员上台演示他们的最终作品,由教师对每个组员完成的部分提出问题,进行答辩。评价体系中详细标明具体的项目和得分,对有创新、创意的项目酌情加分。通过这种基于企业真实项目的教学,让学生一开始便有明确的目的性,能大大提高学生的学习热情和主观能动性。
要掌握好一门语言,最好的方法是开发一些实际的项目。基于企业项目的教学方法不仅适合于PHP教学,同样适合于其它语言。教师引导学生循序渐进,培养学生自我分析问题、解决问题的能力。同时,基于企业项目的教学方法也符合岗位分工,有利于提高学生的团队合作意识,是一种效果显著的教学方法。
[1](美)赞德斯彻.深入PHP:面向对象、模式与实践(第3版)[M].北京:人民邮电出版社,2011.
[2]杨宇.PH P典型模块与项目实战大全[M].北京:清华大学出版社,2012.
[3]赵鹤芹.设计动态网站的最佳方案::Apache+PHP+MySQL[J].计算机工程与设计,2007,28(4):933-934.
[4]传智播客高教产品研发部.PHP程序设计高级教程[M].北京:中国铁道出版社,2015.
The Teaching Implementation of PHPAdvanced Programming Base on Enterprise Website Project
He Shouqian
(Guangdong Polytechnic of Science and Trade,Guangzhou 510640,Guangdong)
The grammar of PHP is simple and easy for learning.It also has advantages of high execution efficiency,short development cycle and crossing platforms.PHP makes great improvement after PHP4,which is fully qualified for the development of big commercial projects and large websites.Facing the current situation of the shortage of PHP talents,the employment prospect of graduates mastering PHP technology is considerable.The curriculum systems with PHP as the main thread are opened gradually in many universities.One factor for the students to master PHP technology in a short time is the teaching implementation process.This article discusses on the teaching implementation of PHP advanced programming with enterprise website projects.
enterprise website project;teaching implementation;MVC pattern;project evaluation
TP312
A
1008-6609(2016)12-0086-03
何受倩(19 79),女,广东惠阳人,硕士,讲师,研究方向为数据库、算法及软件开发技术。