感觉现在学的比较混乱,想理一理学习脉络。
回复内容:
我只想说,如果你在北上广深这样的城市能拿到20+K并不太难,我身边有好多(我只有10K),还有根本就不知道怎么查找Bug的90后(不是恶意,只是恰巧,更巧的是她们有天然优势)。
那么我想说的是,如果你要是看钱的话,请别用自身的技术来衡量,如果你想扎扎实实的搞技术,并且也想乐在其中的话,那么从头来吧,相当于你重新上一次大学(我当时只顾着玩DOTA了)。
分享下我的学习路线,
计算机系统知识(起码知道十六进制,二进制,十进制的相互转换;补码、原码、反码,海明码;溢出和进位的区别之类的;存储器的工作方式,缓存;磁盘列阵之类的...因为我听说过有人竟然用raid-5存限制级的电影),
程序语言知识(程序如何编译的,例如PHP的话就是代码是怎么执行的,sapi,opcode,垃圾回收,线程,进程之类的,如果你想把PHP搞好可以看下《深入理解PHP内核》),
操作系统知识(起码要知道什么是死锁...知道点shell命令,毕竟PHP现在都是LAMP(谢谢@飞雪连天的评论,修改为LNMP))了,),
数据库(这个我就了解的太片面了,我只知道MySQL,还用不好,但是基础的应该都差不多吧,例如笛卡儿积,索引吧),
数据结构(抱歉上学也没学好,现在也在自学,也在看,例如树、图之类的),
算法设计(递归(字段最大和),动态规划法(背包),贪心法等等,感兴趣可以看算法导论),现在都要
面向对象了,这不能不看不了解。
然后你会发现,上面说的和你的工作一点关系都没有,你可能一辈子都用不上你前面学的东西,很正常,就好比说一辈子都不知道72法则,但是当你有贷款的时候,告诉你,你的复利这么算就可以了。
其实你一直都在用,只是不知道怎么就会用的这么好了。然后下一步就是你想要在哪个地方走的更远,相信到这,你的PHP之路已经结束了。
如果在互联网一线公司,只要达到一定技术职级,就有了,不需要管理。非一线互联网的,大部分都需要具备一定的项目管理或者系统架构的能力。
回归到最原始的地方,补基础。
例如《深入理解PHP内核》这本书,如果直接看下去,你会发现很多额外的需要理解的概念。例如设计编译原理,内存管理,网络通讯,数据结构,算法等等。如果这些东西的基础不到位,结果就是你似懂非。这样即使看完,也没有完成吃透。
进阶的书,不是你看完一遍,就算完了,而是真正将它建立为你的知识体系,随便一个技术点,信手拈来,以点带面。也就是说,需要做笔记,要不断消化。
我是学 PHP 的出道的,现在月薪过20K 的。但是就我个人而言,纯技术开发,除非是混迹各大技术平台的牛人,一般来说很难达到这个薪资。
比较好的方法是除了技术本身外,要有一定的管理经验,这个管理包括团队管理,项目管理等等,一般来说,一个员工的薪资和他给企业带来的利润成正比,而一个个人的产出始终有限,因此需要一整个团队来提高利润值,这时候,谁是这个团队的核心谁就容易获得更丰厚的收入。
以上仅是个人经验,不代表所有情况。仅供参考。
个人觉得php其实范围挺广的。要学http,ftp,smtp等网络协议,1.了解html,css,js等前端技术,方便和前端能更好的沟通。2.了解php源码,最好能自己写扩展。对于常用的设计模式有自己的理解和使用。其实php代码真的很简单。3. 懂数据库,我是会mysql的,要能设计表结构,参数配置,sql优化,如果业务较大就要考虑分表分库的问题,还有数据库主从配置,读写分离,都是和架构方面相关的。如果出现慢查询现象的处理方案。4.web服务器,比如nginx,apache。熟练配置各种参数,并且了解php和web服务器之间的关系和运行原理。5. 其他工具的使用,比如sphinx,memcache,redis,nosql等。根据业务需要可能会需要其他语言,比如java,go等。还要会linux常用命令以及shell命令。
综上所述,到这个层次其实就是往架构方向了,php只是一个工具,我们要使用多个工具构建一个高性能的web项目才是最终目的。
上面说的还是比较笼统的,大家觉得有什么不对的,可以补充,不喜勿喷哈~
计算机系统知识,程序语言知识,
操作系统知识,
数据库,
数据结构,
算法设计我想这些够了吧