欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php遇到瓶颈了:本人在校大学生,php自学。自己写过3000多行的php的小项目,也做过discuz的插件,可是自己走到了一个奇怪的点,不知道php下一步该学什么了?人家说深入了解php,这所谓的深入是到什么程度啊?求指点

程序员文章站 2022-06-10 11:20:48
...

回复内容:

很多时候一门技术的瓶颈都不在其本身。我有一个朋友遇到过这样的问题:
./script.sh && binary.bin
script.sh 中 export 的变量在 binary.bin 中没有生效,相信诸位已经看出问题出在哪里。

对于我的这位朋友,需要做的不是回去复习 SHELL 编程。而是要把 fork() 和 execv() 的工作机制搞清楚,才能举一反三,不被相似问题卡住。

所以我的建议是,先多学些其他方面的知识,再写 PHP 感觉就不一样了。 试试yii 调侃一下。
你问题里说到的什么深入的了解PHP什么的。。完全是外行人跟你说的吧?PHP无非是一个工具。一个真正的裁缝,不会跟你说,要深入的研究剪刀如何使用吧?

对于以上的问题,我的回答就是以上几句话,然后说点题外话。

踏入软件开发这个行业,门槛其实很低,学一门语言,学会SQL,会对数据库做曾删改查,那你就入行了。。是的,就这么简单。但是,做好一个项目,你要学的东西远远不止这些。当然,你也要给自己定一个方向,毕竟一个优秀的项目不是你一个人一个角色就能完成的。

大概列一下,这个行业内你能选的角色,按重要程度,以及难度系数排序:

  1. 系统分析师 一个需求都明确的项目,有什么好说的?能把什么东西都理顺,并且,能让整个团队沿这个方向走的人,你说有多重要吧。
  2. 系统架构师 让系统有优秀的基因,这个是架构师干的。
  3. 算法工程师 这个放第三个,是因为难度高个人认为。但是,对于小项目或者,对于性能要求不高的项目来说,这个角色。。。还真可有可无。
  4. DBA 让一切数据井然有序。这年代,数据有多重要大家都懂的。
  5. 普通的开发人员 效率,经验,少出错。
  6. 测试人员 效率,经验,找出错。
  7. 产品经理 这个放最后面,是因为。这个岗位可以不懂技术,对于产品经理来说,运营方面的能力要比技术方面的能力更重要。
以上其实有很多会重合的岗位,没有那么分工明细。但大致的,方向可以这么选。
方向定了,你会迷茫的东西也就少了。学习上的瓶颈,会变成工作效率或者能力上的瓶颈,两者瓶颈对于自身的压力是不同的,压力越大,突破瓶颈的速度也会越快(如果,觉得自己突破不了这个瓶颈,那你就不要干了。。。。)。 去找正确的问题,届时自然会知道该学什么 我要说PHP本来就没太多可深入的余地了题主会不会打我…

真要深入就深入到它的周边吧。学习如何在php上做性能调优,学习怎么判断运行的性能瓶颈。学习数据库的优化。学习memcache等kv数据库的使用。 其实, 我觉得(不一定对哈) 技术 起源于 需求. 所以, 当你考虑下一步要学什么的时候, 应该问自己: 你还需要啥? 你的业主需要啥? 未来你需要啥? 很简单, 缺啥补啥.
例如, 你觉得PHP效率太低, 有如下方法: PHP C扩展, 直接C, 换其它脚本
如果你觉得网络太慢, 这是典型C10K, 可以: PHP加速器,其它优化(一般是缓存), 换编程架构(事件驱动), RPC扩展(听过没用过) , 分布式(我好想了解具体), 其它..
如果你觉得现在的网站功能太弱, 喜欢浏览器极致体验, 可以: 学习js/css, 学习交互设计..(我真不知道了)
如果你觉得网站不安全, 可以: 关注SQL注入, XSS注入, 目录遍历, 内存溢出(C), 等等其它
所以, 你想学啥? 1.自写框架
2.c/c++
写了多少代码只是过程,关键看写的是什么,产生了什么结果,你得到了哪些领悟,

关键还是思想,就是一个问题,能够分析出瓶颈在哪,如何去解决(不只是PHP范围) eyeOS

看完这个系统, 就知道自己还有多少路要走了 才3ooo行代码,对lnmp架构如何,如何优化mysql,php底层机制。linux下的php,还有自己能否写个框架,看看一些开源的代码。有很多,小伙子不要浮躁,