如何理解精通PHP ?
「精通 PHP」可以理解为以下三个:
- 精通「PHP 解析器
- 精通「PHP 语法、函数(这门语言)
- 精通「PHP 项目开发
1 精通「PHP 解析器」
可以从这里开始学习:
- PHP核心:骇客指南 :http://php.net/manual/zh/internals2.php
- TIPI-深入理解PHP 内核:http://www.php-internals.com/
2 精通「PHP 语法、函数(这门语言)」
多看官方文档:http://www.php.net/manual/zh/
- 为其一年,文档看十遍;
- 看文档的时候连带下面的评论也都一并查看,那些评论价值极高,有代码示例的要运行一遍;
我见过一个 PHP 高手,2011 年那会没有好框架的时候,他用简单的编辑器手写代码,编码速度惊人,键盘敲击声如淘宝客服打字速度,啪啦啪啦啪啦啪啦啦,我问他怎么做到的,他一脸 ( ̄_, ̄ ) 的说:文档看了 8 遍吧,大家不都这样吗?
这一块强调的是比较实战的「应用构建」。接触的更多是软件设计,工作流,随便列几个模块:
- 用户认证
- 用户授权
- 缓存
- 队列
- 计划任务
- 前端样式构建工作流
- 邮件
- 本地化
- 文件存储系统
- 表单验证
- 分页
- 测试
- 数据模型设计
- 错误记录
- 日志管理
- 模板引擎
- 验证码
- 第三方登录
- 数据库优化
- API 那一堆,如 OAuth、版本管理等。。。
- 还有更多产品、业务专属的,如附近的人计算、积分系统等。。。
- 一口气没说完。。。等。。。
这些需要大量的项目经验积累,按「10 个项目」为一个阶段,你会发现每 「10 个项目」你对 PHP 的理解都不一样。
实战项目这个因工作职位而定,外包公司一年勤奋的能接触到几十个项目,之前在外包公司待过,半年处理 13 个项目。
其他的如在大公司里面工作,接触的项目会比较少,有一些情况下,只是维护一个系统里的小功能,一年下来就一个项目经验。
你不需要去「自己从零开始写一个框架」来学习这些东西,就像 你不需要去学组装汽车,甚至是生产汽车零件来成为老司机一样。
如何理解精通PHP ?的更多相关文章
- 《如何阅读it技术书》课堂笔记——51cto
对一些书的看法: “21天精通JAVA之类”的书,好好理解精通二字,哪里有这么快就能学的会. 吐槽新人: Oop理论,别写出来的都是面向过程式. 桌面乱七八糟. 对新人分享一些经验: 阅读时自我提神的 ...
- 从GitHub Jobs! 看技术发展趋势! 程序员进阶必备!
0. https://jobs.github.com/positions GitHub Jobs: 1. https://jobs.github.com/positions/38bb8dc8-b5b4 ...
- 十五天精通WCF——第八天 对“绑定”的最后一点理解
转眼已经中断10几天没有写博客了,也不是工作太忙,正好碰到了端午节,然后最近看天津台的爱情保卫战入迷了...太好看了,一直都是回味无穷...而且 涂磊老师话说的真是tmd的经典,然后就这样耽搁了,好了 ...
- [转]十五天精通WCF——第八天 对“绑定”的最后一点理解
转眼已经中断10几天没有写博客了,也不是工作太忙,正好碰到了端午节,然后最近看天津台的爱情保卫战入迷了...太好看了,一直都是回味无穷...而且 涂磊老师话说的真是tmd的经典,然后就这样耽搁了,好了 ...
- Java精通并发-透过字节码理解synchronized关键字
在上一次https://www.cnblogs.com/webor2006/p/11428408.html中对于synchronized关键字的作用做了一个实例详解,下面再来看一下这个程序: 请问下, ...
- <程序员从入门到精通> -- How
定位 自己才是职业生涯的管理者,想清楚自己的发展路径: 远期的理想是什么?近期的规划是什么?今日的任务和功课又是什么? 今日之任务或功课哪些有助于近期之规划的实现,而近期之规划是否有利于远期之理想? ...
- 精通Perl(第2版)
精通Perl(第2版)(通往Perl大师之路必读经典书籍,体现了一种编程思维,能够帮你解决很多实际的问题) [美]brian d foy(布瑞恩·D·福瓦)著 王兴宇 刘宸宇 译 ISBN 978 ...
- IDDD 实现领域驱动设计-理解领域和子域
上一篇:<IDDD 实现领域驱动设计-一个简单业务用例的回顾和理解> 在<实现领域驱动设计>第二章的前半部分内容中,提到领域和子域的概念,并且作者把这两者又进行了细致的区分,其 ...
- <精通JavaScript>---阅读笔记01
下面是阅读精通JavaScript书做的相关笔记. JS中的函数重载 函数重载必须依赖两件事情:判断传入参数数量的能力和判断传入参数类型的能力,在js中每个函数都带有一个仅在这个函数范围内作用的变量, ...
随机推荐
- 【Visual Studio】解决方案未保存,请先保存你的解决方案,然后再管理Nuget包
上网下的Demo,文件夹中没有.sln文件,用VS打开.csproj文件来打开方案.此时可能因为一些引用问题想打开Nuget包管理器,会弹出如下提示: 解决方案未保存,请先保存你的解决方案,然后再管理 ...
- 【WPF】CommandParameter解决多传参问题
方法一:传参按钮控件自身绑定的ItemSource 用WAF框架实现MVVM,按钮的点击事件都要通过Command来传递到这个View对应的ViewModel上,再通过ViewModel传递到上层的C ...
- SpringMVC 多个数据源 配置多个事物管理器 Multiple Transaction Managers
http://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/transaction.html#transaction ...
- Jackson2.1.4 序列化格式化时间
public class User { private int id; private Date birthday; private double money; private String name ...
- 简单文件系统构建ramdisk
1. BusyBox编译工具,包含bin, sbin, usr, linuxrc. 2. 添加相关重要目录:dev, etc, mnt, proc, sys, lib, var, tmp. ...
- Java命令学习系列(三)——Jmap
Java命令学习系列(三)——Jmap 2015-05-16 分类:Java 阅读(479) 评论(0) Jmap jmap是JDK自带的工具软件,主要用于打印指定Java进程(或核心文件.远程调试服 ...
- JavaScript(一):JavaScript简介
一.什么是JavaScript JavaScript是一种具有面向对象能力的.解释性的程序设计语言.更具体一点,它是基于对象和事件驱动并具有相对安全性的客户端脚本语言.因为他不需要在一个语言环境下运行 ...
- jquery实现简单瀑布流代码
测试环境:ie8 ff13.0.1 chrome22 可以将分页获取的内容依次填入四个div中,瀑布流的分页可以以多页(比如5页)为单位二次分页,这样可以减少后台算法的复杂度 <!DOCTYP ...
- Keypress - 捕获键盘输入的JavaScript库
Keypress 是一个强大的 JavaScript 库,用于捕获键盘输入.这是一个有非常特殊的功能的输入捕获库,它是很容易掌握和使用,并且不依赖第三方库.在网站开发中,经常会碰到需要处理键盘输入的场 ...
- 关于PHP开发所需要的工具和环境
0.notepad++ 一个类型记事本的软件,用来看安装的部署说明命令. 1.虚拟机 在虚拟机里面操作,本机不会被影响. 2.CentOS系统 类似Linux的系统,在里面安装PHP,Nginx,ph ...