什么样才算学好php

也算做PHP蛮久了,我也在想水平怎么样呢?找人凭什么说明人家的水平呢?其实这个有工作经验的成分,有知识面的成分,也有深度的成分。知识面觉得了你可以跟哪些人顺利的交流和工作,知识深度决定了你的工作能力和工作效果,工作经验是避免了你工作产生失误。

我很强调知识面,也是自己的个性所以然。我就喜欢看很多东西,但是我学东西的深度也许都不大,但我却有了和别人沟通的前提。所以我成为不了专家也许。成为专家的人是一群痴迷的人,为工作学习疯狂的人,只有这样的人才是专家。这个也是《卓有成效的管理者》一书说的一方面,这本书很好,我还得温习一遍才行。

回到正题,不多说,但看了一下别人发的帖子,所以转了,PHPer可以参考参考:

《什么样才算是学好了PHP?》

1. php基本语法,像《精通php》里的各个知识点.

2. Sql ,比如对Mysql的管理,sql语句的编写。

3. html,做页面肯定会需要这些东西了。

4. css,现在比较常用的的是Div+css设计。

当然还得对 apache, linux有一定的了解了。

上面的一些东西,就够做一些简单的网站,比如个人或公司主页了。

 

但是大网站是远远不是如上的一些东西就可以的,比如:

1. 要选择一个好的框架,比如Symfony,或zend framework。它们都采用了MVC模式。通过框架可以减少很多底层的重复开发,更重要的是可以让多人协作更加容易和让项目更易于扩展。

2. 代码和页面分离,比如Smarty,它可以让页面(html)和逻辑处理(php)做较好的分离,让美工和程序基本可以并行工作(前提是需求做得比较完善)。

3. 高级缓存。 这是一个php开发上永恒的话题,网站之所以要采用php就是因为速度快。采用缓存技术,可以让速度更快。 主要有的缓存技术有:

文件缓存,如Pear。 

内存缓存,如Memcached。 速度非常快。

操作系统缓存,比如Squid。

4.加速工具,比如zend optimizer, 还有页面压缩。

5.高级数据库技术,比如设计优化,查询优化,集群等等。你能想象Google采用的数据库技术就是Mysql么?Mysql完全可以用于海量数据,但是我们一般到了几百万就很慢了,那是因为功底没有练就。

6.优化Apache,Mysql,linux服务器。主要是设计一些配置文件的参数,和关闭一些不需要的服务。

7.算法,不同的人写出来的东西效率可能差几十倍。建议多看看算法的书,还有多用php练习比较。

8.提高用户体验,当然就是要做的好看,但是页面文件不要太大,要不会影响速度,采用一些DHTML,Ajax技术。用普通人的使用习惯来设计。 Ajax可以采用一些框架,比如prototype。

当然从软件工程来看,你还得学一些比如CVS,phpunit等工具。

多研究一些开源的东西,对学习有帮助。