成为一名优秀的PHP程序员该如何做呢?应该具有什么样的技能才算得上PHP程序员?你的技术又是在什么水平级别上?本文将列出一些作为一名PHP程序员应该了解的事情
MySQL能力
在开发上的应用基于几个能力体现
()了解知道用PHP连接数据库;懂得写一些简单的SQL;建一些简单的索引;懂得用工具简单操作一下数据库(增删改库表结构数据等等)
()熟悉懂得在开发应用上设计数据库建立一些有效的索引用explain分析SQL性能压力测试等等
()很熟悉深入了解数据库索引存储引擎原理以及运行机制能有效地构建高性能可扩展的数据库结构/架构有效地优化数据库性能配置并加以调试分析数据库运行状态
()精通简单地说具备以上所有能力的同时有多年高负载分布式环境下的优化管理经验
据观察以及交往经验%的PHPer处在了解阶段%处于熟悉阶段>%很熟悉精通的人基本就不是PHPer了
◆%这个群体最容易忽视MySQL以为MySQL只是简单的存储媒介没有优化意识认为加个内存CPU就能解决问题
典型事件joinorder bygroup by等语句性能一塌糊涂数据库根本没有设计(仅限于拆成一个主表N个附表等)搞不清字段类型及作用碰到大表的复杂查询就没辙
◆%这个群体的人只是MySQL运行机制理解不透彻对影响MySQL性能的关健因素把握不明确不熟练
典型事件熟读手册但说不清索引原理不知道二叉树HASH等算法对于数据库的作用
◆%的群体已经基本可以胜任DBA的职能
OOP能力
()了解了解变量的作用域类型及其意义了解继承机制等懂得复用封装概念
()熟悉熟练应用接口抽象等技术混合开发程序并理解其中含义一般研究过Java
()很熟悉有过OOP架构设计经验熟悉设计模式UML熟悉PHP对象运行机制内容管理等
()精通应该是架构师级别了不限于PHP
经常我们会碰到一些自称熟悉OOP却连publicprivateprotectedstatic都解释不清的人是肯定没有经历过正规的OOP项目
大型网站经验
()了解熟悉PHP开发下的缓存应用(MemcacheAPC等);接触过LVSSQUID应用;有一定的Session处理方案;熟悉负载均衡;熟悉PHP数据连接池应用;了解PHP编程性能优化
()熟悉掌握分布式缓存及缓存性能优化熟悉存储系统文件系统数据库开发可扩展平台能结合负载均衡合理布置流量对PHP运行性能进行监控与分析
()非常熟悉具备系统分析师能力已经超出PHPer环节;
()精通
DOM开发能力
应用能力
以上只是个人拙见仅希望能够以此抛砖引玉希望大牛加以补充或更正