为什么很多人觉得学习PHP很简单?
- WBOYoriginal
- 2016-06-17 08:32:001095parcourir
回复内容:
PHP的部署简单,概念比较少(官方也倾向于让各种概念保持模糊,驱使人们用直觉来学习PHP编程)。
为什么说PHP比Java和C要简单呢?Java和C有一个类似的特点,就是它提供了很多概念,却没有提示你该怎么用。
比如C的指针。你可以用指针实现动态数组,可以用它记录回调函数,或者指向一个结构体。好了,能做这些,然后呢?为什么要做这些?初学者可能会很困惑,他不明白这些东西和他想实现的电子表格管理软件有什么关系。
再比如Java。有类,继承有接口,然后呢。组合代码,代码重用,这些跟我想做的电子表格软件有什么关系吗?
但是PHP的思路完全不一样,它给你展示PHP是怎么用的,但是却不解释这些概念。我觉得这给新手以很好的指引,因为编程就是这么一回事,它终究是用来解决问题的,拘泥于概念对学习的帮助不大。
因为PHP一般都是在Linux系统运行,没有线程的概念,基本上不需要攻城师自己管理内存。而且PHP提供了很多实用的内置函数,特别是处理字符串和数组相关的,为Web开发提供了很多方便,让代码更好写了。
此外,虽然PHP也可以用来开发诸如web服务器这种客户端软件,但是主要还是被用来做Web开发,应用环境比较单纯(较少涉及底层操作,这也和PHP的设计初衷有关),所以可能相对C这种底层语言更容易一些吧。
update:
PHP一般都是在Linux系统运行,没有线程的概念=》这句我说错了,PHP可以通过扩展操作进程。
PHP也可以用来开发诸如web服务器这种客户端软件=》我是想说PHP除了web脚本以外也可以做别的,可以通过扩展实现底层操作,比如sockets模块什么的。
这样改过以后准确了吗?我写错的地方欢迎指出来,我自己也愿意修改。匿名关闭评论这样很有意思吗?
第一次被邀,就写点什么,也作为对自己的一个回顾,表达能力有限,请多见谅.
我粗浅的认为,人在接触跟自己思维方式相匹配的事物的时候,会产生一种莫名的亲切感,而PHP的一些feature决定了它和非常多初学者的思维方式不冲突(比如:弱类型,既能面向过程又能面向对象, etc..).说白了,就是学习门槛不高.这样,初学者会很容易在PHP的学习过程中的到一定的成就感,有了初期的成就感之后,他们就会愿意去学这个东西.有了这个意愿了,就不会轻易放弃这个东西了(我这里说的是初学者).
就我了解的情况来看,PHP目前有各种各样的开源项目,开源框架(这都归功于程序员们天生的喜欢自己造轮子的强迫症.),这给初学者和刚入门的同学提供了非常丰富的学习资源.当然,这些各种各样的项目的质量确实是参差不齐,但是有谁在初学程序的时候,不是靠看别人的代码过来的呢?随着初学者掌握的知识和经验越来越丰富,自然而然的就会对之前看过的那些代码产生自己的见解.
上面有人提到了PHP的部署容易,这个feature也确实给初学者带来了很大的方便.能让初学者真正把精力放在学习编程这件事情上.也许有人会说,初学者部署的时候也会遇到很多问题.对于这一点,我不否认,因为我本人也帮很多初学者解答过初期搭建apache+php+mysql环境的问题(当时的xampp之类的套件还没有现在这么方便易用).即便是初学者在搭建环境上多花了一点时间,在真正开始学习写代码的时候,就不用再管编译或者deploy之类的事情了.
当然,学习PHP简单,并不就是说PHP需要学习的东西不多.由于PHP在web开发中的普遍使用,web开发中和后端语言无关的内容都得了解到,比如HTTP协议啊,HTML啊, MYSQL啊等等...虽然在大牛眼里这些东西都是毛毛雨,但是在初学者眼里,这些东西都还是挺复杂的东东.但是这些东西,在初学PHP的时候完全不用关心.当然学习其他语言的初期也不用关心这些东西:)
随着后来的学习和实践等等,遇到的问题越来越多,要学习的东西还是挺多的.比如像 @Laruence 鸟哥那样,研究PHP的源码,分析各种诡异BUG的真正原因. 这又要看得懂C了.并且PHP源码里面的各种宏扩展,要看懂也并不是只看懂C那么简单.
好像有些偏题了....就说这么多吧....
我其实更想看看 鸟哥@Laruence 的观点
因为PHP一般都是在Linux系统运行,没有线程的概念,基本上不需要攻城师自己管理内存。而且PHP提供了很多实用的内置函数,特别是处理字符串和数组相关的,为Web开发提供了很多方便,让代码更好写了。
此外,虽然PHP也可以用来开发诸如web服务器这种客户端软件,但是主要还是被用来做Web开发,应用环境比较单纯(较少涉及底层操作,这也和PHP的设计初衷有关),所以可能相对C这种底层语言更容易一些吧。
真牛逼。
大概人们觉得学习 PHP 很简单因为看到的 PHP 工程师都是这个水平的?
学习皮毛都简单,
觉得它简单,只是你拿它做的是简单的东西,
c++,java因为它们是完整的体系,学习曲线陡,学起来复杂,
但是PHP是脚本,或者说就是个API,用起来方便些。
很多人写出来的PHP程序,功能是实现了,代码却惨不忍睹。
真正的PHP是一套体系,这个体系也包含了c/c++或java.
没见过不学习低级语言就能学好脚本语言的。
Déclaration:Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn