PHP应该学什么,如何学好PHP(一)
更新时间:2014年06月13日10时50分 来源:传智播客PHP学院
有很多网友发来邮件询问各种问题,有深有浅,有难有易。因为很多时间需要上课,没有一一回答,这里给大家道个歉,这里我举例出了几封网友的来信:
发件人:
Chen Ma
收件人:
hanshunping;
hanshunping
主题:
我就问韩老师一个,问题
韩老师,
你好,我是你的脑残粉!我在国外读书,我就问您一个问题,一个对面向对象有一般的了解,
和用Python编过一两个小程序的毛头学生我,经过多久的苦练,可以在美国找到工作?
PS:英语不是问题,主要是编程能力和实力。
请回答,我很期望你的回答
爱你的,
学生粉丝
---------------------------------------------------------------------------
From:
邓子
To:
hanshunping
Subject:
传智的老师你们好.
我是在自学的PHP,最近很迷茫,总觉得自己以后不能胜任工作.
我就想问问传智的老师,自学到什么程度,技术点到哪里,才可以去找工作!
-----------------------------------------------------------------------------
From:
鹅卵石
To:
hanshunping
Subject:
老师,有点迷茫
韩老师你好:
我是一名学生,想学习网页制作。
我遇到了点小小的问题。
我在网上学习你讲的php从入门到精通时,前部分是从第00讲到14讲,在接下来的就是第51讲了。
突然就感觉自己掉链子了,不知自己该怎么学习了。还请老师给指点一下
-------------------------------------------------------------------------------
From:
尙帝
To:
hanshunping
Subject:
求教
韩老师:
您好!
我是西藏大学的学生,最近在看您关于php的视频。学生手上有个项目要做,就是用php开发一款游戏,跟前几年流行的劲舞团差不多的那种。由于刚学php不久,对游戏开发没有经验,我想请教韩老师,做出来这么一个游戏,都需要哪些技术,期待老师的回信!谢谢韩老师!
---------------------------------------------------------------------------
还有很多,就不一一列举了,后面我发现,其实都是一些共性问题,大致是:
1. 应该怎样学习PHP,学习的顺序是怎样的?
2. PHP学好后,可以做什么事情?
3. 听得懂课,但是一旦自己独立写程序,就没有思路?
4. 学习PHP需要怎样的基础,算法重要吗?
等等,诸如此类的问题。所以,我想干脆就写一篇文章来详细的给PHP学习者们说说应该怎样学习PHP?怎样才能学好PHP?
首先,大家要达成一个共识,就是学习任何一门编程技术都需要我们付出心血,都要讲求循序渐进,由浅入深。对每一个知识点要搞透,然后通过案例来加深认识,最后还需要把学习到的各个知识点实际运用到项目中去,才能融会贯通,最后才能到达能自如的驾驭项目的水平,现在我们就来看看应该怎样一步一步的学习PHP这门编程技术,先看看学习PHP的顺序图,此学习顺序图是我推荐的学习内容和学习顺序(除了这里列出的内容,要走向高手之路肯定还有更多技术需要学习,我这里只是对于初学者列出的主干学习内容,并不是全部): ![]()
对于PHP初学者来说,看到这样多的内容,心里已经开始打退堂鼓了,但是,万丈高楼平地起,我们只要坚持每天学习一部分内容,最后总会把这些技术都精通掌握的。
PHP这门技术相对java和 .net来说,是比较简单的。PHP最主要的作用就是做站,也就是说PHP技术是用于开发网站的,比如目前世界排名前40的网站,有70%都使用到了PHP技术,比如 facebook、youbute 、新浪、百度、淘宝、搜狐和腾讯这些知名的网站都有很大一部分业务是用PHP来开发的,因此被誉为web开发首选技术。开发PHP的软件可以说是简单的记事本也可以是一些集成开发软件,比如 zendstudio ,这里我列举一些常见的PHP开发工具:
① Editplus② Zend Studio ③ PHP Coder④ phpedit ⑤ easyecpilse⑥ dw ⑦ vim
windwos下我常用的是 editplus和 zend studio ,在linux下我推荐使用vim来开发更专业。
要学习PHP开发一定要按照正确的顺序进行学习(如上图PHP学习顺序图所示),很多人被一些《xx天精通***》这样的垃圾书的影响,PHP这门语言相对JAVA要简单,开发人员不需要学太多即可通过面向过程的方式开发出一个"某某管理系统",因此社会上充斥着大量只会面向过程的开发人员,他们不懂Http协议!不懂JavaScript!不懂PHP工作原理!不懂什么是真正的面向对象程序设计,这种"不不不"开发人员能找到4000的工作就已经非常值得庆幸了。企业中最需要的是对"Http协议、Javascript、PHP工作机制、PHP程序调优、LAMP环境调优、OOP"等技术熟悉的人,而这样的人是非常难招的。大家记住欲速则不达,速成的结果就是以后浪费更多的时间,回想这么多年你走过的路,有多少次为了走快点就跳着走,最后又浪费时间返工的事情,按照正确的顺序才能更快、更好的掌握PHP。
学习PHP分为以下几个阶段,每个阶段都有学习的重点和注意事项,下面详细给大家介绍:
第一阶段: PHP前端网页开发基础,在这一个阶段中分为以下几个阶段课程
(1)HTML基础与加强
HTML语言,HTML语言背景知识,HTML全局标签,HTML格式标签,HTML文件标签,HTML超链接标签,HTML图像标签,HTML框架标签,HTML客户端图像地图,HTML表格标签,HTML帧标签,HTML表单标签,HTML头元素,HTML分区标签
(2)XHTML基础与加强
XHTML与 HTML的差异,XHTML语法,XHTML DTD,XHTML验证,XHTML模块,XHTML属性,XHTML事件,XTHML结构化
(3)HTML5设计与应用
HTML5介绍,HTML5多媒体处理,HTML5画布,HTML5 Web存储技术,HTML5表单,HTML5属性和事件HTML5的常用标签(比如:applet标签、article标签、aside标签、audio标签、canvas标签、datalist标签、details标签等)
(4)CSS基础与加强
CSS简介,CSS基础语法,CSS派生选择器,id 选择器,CSS类选择器,CSS盒子模型
CSS背景、文本 、字体、边框 、外边距、内边距 、列表、表格CSS 高级: CSS尺寸、分类 、定位、伪类 、伪元素、媒介类型
(5)DIV+CSS设计与应用
使用知名网站的首页深入剖析DIV+CSS的WEB标准:盒子模型经典案例-优酷首页面、仿sohu首页面布局、可爱屋网站首页面。涉及知识点包括:(CSS定位的四种方式、左浮动、右浮动、清除浮动、标准流和非标准流、设置对象的层叠顺序、块元素和行元素的转换等)
(6)Javascript基础语法:
Javascript基本介绍、Javascript的发展史、Javascript运行原理剖析、Javascript特点、
Javascript的标识符、Javascript基本数据类型(数值类型、布尔类型、字符串类型)、
Javascript复合数据类型简介(数组、对象)、Javascript特殊数据类型(NULL、undefine)、
定义变量、初始化、赋值、数据类型转换的两种方式(自动转换、强制转换)、Javascript的运算符(算术运算符、关系运算符、逻辑运算符)、Javascript的位运算和移位运算
(7)Javascript三大流程控制
顺序控制、分支控制(单分支: if语句、双分支: if-else语句、多分支 if-else if-else 语句, switch-case-default语句)、循环控制(for语句、while语句、do-while语句)、在ie和firefox如何调式Javascript
(8)Javascript函数
函数基本概念、函数的定义、函数的调用方式及调用过程深度剖析、函数使用细节讨论、使用Function类创建函数、函数实际运用(打印金字塔、九九乘法表)、函数的递归调用、
Javascript常用系统函数使用(encodeURI、decodeURI、eval、parseInt、parseFloat、isNaN等)
(9)Javascript数组
数组的基本使用、使用for/while遍历数组、数组实际运用(计算班级平均分)、二维数组的基本使用、使用for遍历二维数组、对二维数组转置处理、数组排序介绍、冒泡排序、顺序查找和二分查询法
(10)事件驱动
Javascript的Event-Driven机制、事件源、事件处理程序、事件名称、事件对象是什么、
事件类型(鼠标事件、键盘事件、HTML事件、其它事件)、Javascript访问CSS技术、
事件驱动的浏览器兼容性处理、常用的18个事件(onblur、onchange、onfocus、onkeydown、onmousedown等) 综合案例(Javascript版计算器)
(11)DOM编程
DOM编程介绍(HTML DOM与XML DOM)、DOM编程实例入门、BOM介绍、DOM对象介绍、window对象详解、history对象详解、location对象详解、navigator对象详解、screen对象详解、event对象详解、document对象详解、body对象详解、style对象详解、WEB版坦克大战游戏、forms对象(集合)、from对象、images对象(集合)、img对象、links对象(集合)、link对象、all对象(集合)、table对象详解、tableRow对象和tableCell对象、基于table对象的用户管理系统
(12)WEB网站设计与应用
商业级网页制作(企业邮箱网页、旅游网网页或呱呱网网页)
这个阶段的学习教程:推荐大家看传智播客 韩顺平轻松搞定网页设计(html+css+javascript) ,下载视频教程地址:http://php.itcast.cn 。这个阶段的教程是针对PHP零基础的同学进行讲解。在教程中,我讲解了很多的案例和作业是需要大家来完成的,千万不要“眼高手低”,很多初学者都纷纷来信说这样一个情况:听课没有问题,写代码没有思路,比如下面一位网友的来信写到:
----------------------------------------------------------------------------------------------
From:黑马
To: hanshunping
Subject:
韩老师您好:我是一名学生,一直看您的视频,就是我看了您的视频以后,觉得学到了蛮多的,就是感觉还是有点迷迷糊糊的,学的不够透彻,就是不能独立的完成一个项目的开发,我尝试着去写了几个项目,就是遇到问题后,有时不知道怎么解决,问老师,老师叫我们百度,问题还是解决不了,我想我打算毕业以后,去您那培训一下,把基础打好,您觉得有这个必要吗?
可能您会说,这得看我自己对这个基础掌握多少,我也知道,就是有些知识觉得掌握了,但用起来又忘记了。对了我学的是php,希望您能给个建议。谢谢您。
-----------------------------------------------------------------------------------------------
这个就是典型的基础不够扎实,然后就盲目的学习高级阶段课程的后果,我曾经这样说过一句话:有些朋友学习技术,像一个大胖子,肚子大,脑袋大,看起来很唬人,但是腿很细,风一吹就倒了。就是说基础太差了,结果就是越学越迷茫,最后,就放弃了。因此我说”基础很重要” ,还有一点我要强调:在视频教程中我讲了很多的案例并布置了作用,一定要自己亲手把代码熟练的写出来,记住是亲手写出来,而不是照着我的代码抄,更不能是看懂了我的代码就以为自己掌握了,要知道“看懂了”和“会写了”之间差着十万八千里呢!我们学习编程是”做中学”,是做的过程中学会的,而不是会了在做,正是在编写一行行代码过程中,逐渐建立编程思想的,思想→代码这个过程是需要敲很多代码的。
![]() 用卖油翁的一句话说: “我亦无他,但手熟尔 ”,请永远记住 “巧是从熟练中演变出来的 ”,这就是我们常说的 “熟能生巧 ”。 |