日期:2014-05-17 浏览次数:20487 次
http://www.blags.org/php-programmer/
?
?
?
最近去了tencent,xunlei等互联网名企面试,总结一下:
?
如果想进入这类企业进行底层开发的话必须对互联网各方面的技术原理了解的很清楚,例如apache实现原理。语言方面既然是php开发自然对c/c++要求比较高。往往需要自己写php扩展。使用mysql自然想很多常见的,性能瓶颈要能有很好的解决方案。mysql 插件编写,apache模块编写。联系起来结合点还是要会c。
倘若是做中间层和前端工作则要求对css,javascript要求比较高。当然对web的一系列实现原理也是要非常熟悉的。
对新技术要比较敏感,才能证明你有很好的学习能力和使用能力。
努力提高自己的英文口语,和阅读能力。往往很多新技术都是老外想出来的。等有了中文版也许这个技术已经不是那么新了。
相信我们很多人都只是了解到中间的皮毛而已,对于技术原理。这类型的东西了解甚少。值得注意的一点,正则这个东西在他们严重也是很重要的。
?
想成为一位合格的php程序员(高级),必须符合如下条件。
?
◆ 文件目录处理函数包80%以上的函数的功能的灵活运用。
◆ 日期时间函数中的80%以上的函数的功能的灵活运用
◆ 数学函数库中的100%的内容。
◆ 网络库中的60%以上的内容,对各个函数的功能比较熟悉。
◆ 字符串处理函数下的60%以上的内容,特别是各种处理函数。
◆ 正则表达式函数下的90%以上的内容,特别是各种正则处理
◆ 一些安全库下的40%以上的内容,如果对于安全没有接触的话根本就不可能掌握PHP
◆ XML处理,熟悉SAX、DOM以及JDOM的优缺点并且能够使用其中的一种完成XML的解析及内容处理。
◆ 图形图像函数库下的80%以上的内容,特别是一些图像生成和处理
◆ MySQL 数据库函数下的90%以上的内容,特别是处理各种数据的函数
◆ 数组处理函数下的90%以上的内容,特别是各种操作处理函数
◆ 其它PEAR,PECL,和一些扩展类库中的80%以上的内容,特别是一些常用的类的处理
◆ 针对不同的需求,查找不同的函数库。
◆ 测试:必须熟悉使用phpunit编写测试用例完成代码的自动测试。
◆ 管理:必须熟悉使用xinc, phing等完成工程管理的常用任务,例如工程编译、生成phpdoc、生成、版本控制、自动测试。
◆ 排错:应该可以根据异常信息比较快速的定位问题的原因和大致位置。
◆ 思想:必须掌握OOP的主要要求,这样使用PHP开发的系统才能是真正的PHP系统。
◆ 规范:编写的代码必须符合流行的编码规范,这样程序的可读性才比较好。
◆ 博学:掌握OOA、OOD、YiiFramework 、Zendframework、cakephp、symfony、模板技术等流行技术,掌握软件架构设计思想、搜索引擎优化、缓存系统设计、网站负载均衡、系统性能调优等实用技术。
?
◆ 多去看别人写的代码,php优秀的框架很多,很多人在认知上就有一个错误。认为自己能用一个框架开发一个系统了就认为自己已经熟悉这个框架了,其实会使用他并没有什么一个框架基本都有用户手册,一看基本都会使用了,要想自己技术上面提升,建议多看看这些框架的实现原理(设计模式)。