• 技术文章 >后端开发 >php教程

    一个初级的PHP程序员如何提升自己的技能,以及构建自己的技能树?

    2016-06-17 08:30:38原创925
    看到一个JAVA程序员提出这样的问题,我就随口问了一下。我现在在一家互联网公司上班,刚刚写代码时间不长,领导有的时候会说我的代码质量不好,请问我该怎么提升自己的技能?每天的工作就是系统的功能优化,写写功能类的代码。

    回复内容:

    泻药。。。
    这个嘛。。拿我个人来说。。(我是比较笨的)
    首先就是撸代码,PHP是个易上手的语言,但是并不代表就简单。
    撸了比较多的代码发现很多代码都是可以重复引用的。于是我学会了《封装》
    ----------------------------
    发现自己封装的代码还是有开发效率问题,于是我上网搜索解决方案,发现PHP有不少的框架可以使用,可以节约不少的时间。
    ----------------------------
    项目多了之后我发现很多稍微大的项目很难控制代码质量,比如东一块西一块的写代码,需要什么功能就在直接撸代码在哪块,我发现这样很不对劲,我试图上网查看解决方法于是我学会了《设计模式》
    ------------------------------
    我开始发现我。。我的服务器死机了,我发现我写的SQL有性能瓶颈,在一台服务器上跑不动了,于是我学会了,优化SQL
    -------------------------------
    我又发现单单优化SQL还是木有用。。于是我又学会了,MYSQL读写分离。。
    ------------------------------
    现在问题又来了,单单数据库优化是不够的,于是我又学会了负载均衡
    ------------------------------------
    然后就是缓存,中间件,NOSQL,PHP扩展开发。
    总之:不积跬步无以至千里. 庖丁解牛,熟能生巧,他山之石可以攻玉 关于代码质量问题,个人认为好的代码应该符合以下条件,依重要程度排序:
    1、可用性。没什么好说的,代码必须是以实现需求为前提,并且是可正确运行的,否则工整优美如诗也不过是屎。
    2、可靠性。代码这个东西啊,不能加很多特技,看到很快很牛,结果用户一用一定骂娘,根本没有这种代码,证明你写的代码都是假的。好的代码在逻辑上应该能考虑到业务上的各种场景,以及在实际线上运营的压力下是稳定可用的。说起来很简单,足够复杂的模块,习惯先用文档进行初步构建和检验,再者测试,测试,测试~
    3、可读性。实现功能、通过测试上线运行,只是基础……
    一、看下命名,用词是否简明,含义是否清晰,不要用拼音,不要用拼音,不要用拼音;风格是否统一(有没有驼峰和下划线同时存在的情况)或是否符合团队/框架的书写规范。
    二、最好找别人的代码,或者自己已经放下一段时间的,读一下大段的代码,读一下大段的代码,读一下大段的代码……读一下n层嵌套的代码,读一下n层嵌套的代码,读一下n层嵌套的代码……读到吐了大概就知道怎么改了。
    三、良好的书写格式,注意空行,缩进的使用,总之要自己看着舒服。
    四、注释,注释,注释。
    如果不想将来接手的程序员经常问候你娘亲,现在就开始改吧。
    4、结构化(复用性,可维护性等……)。“结构化的程序设计”这个在读书时,上C语言的时候提出的东西,看似并没有什么卵用,其实是相当于独孤九剑中的总决篇。现在的PHP能实现抽象程度较高的面向对象方法,也比较完善的面向对象实现方式;有前人帮忙总结了一套GoF设计模式。已经很幸福了,熟练掌握这些概念和各种技巧,然后忘掉,回归结构化设计的思想,所有技法可顺手拈来,无招胜有招。
    5、高效。只要是对以上条件有助益,效率是可以在一定程度上做出牺牲的;但另外能做好上面的四条的代码效率不会低。

    关于怎么提升,以下是本人的切身经验:
    1、态度。容易出现在刚工作,接手维护现有代码的程序员身上。不是自己写的代码不主动关注,不但没有做好,也失去了提升的机会。更有甚者直接复制粘贴,连改动都不带一丁点。所以要有一个觉悟:所有交给你经过手的代码,不管原创是谁,就是你的代码,你需要对它们负责。
    2、多读。找一些项目读,好的不好的都可以,分析它们写得好不好,好在哪,不好在哪。读代码是很枯燥的,要耐得住。
    3、多写。没什么好说的
    4、各种基础姿势。不止于PHP,不止于业务,哪里不会点哪里,自行体会。 不请自来
    干了三年多PHP的程序员来回答一下
    题主记住,任何语言程序员是靠代码量和BUG数堆起来的。
    本人的成长方式就是大量刷别人的来源程序,研究为什么要这么写。
    遇到的问题多了,以后再遇到相同性质的就可以直接解决了。甚至你可以知道为什么会出现这种问题。

    总结起来就是
    多看,多想,多实现。 最最基本的是先把手册看几遍,边看边敲。这是不可以跳过的一个步骤。

    精通HTML、CSS和JS等技术,不管以后是否会用,必须要精通。
    吃透服务器和数据库有关的部署和设置,不是完整的做过一次就行了。
    然后尽量理解设计模式,MVC等基础知识,不仅仅是了解那么简单,一定要实际使用起来。

    然后找一些O'REILLY的PHP有关的书啃一下,尽量找一些涉及的比较全面的,比较广泛的。推荐《构建可扩展的Web站点》

    最后,多练多交流。

    提个建议,很多初学者还没会基础只是就开始讨论性能、负载。不着急,先学基础,学会基础再去看那些假大空的东西。 新建php码农集合群,地址位于中关村软件园,欢迎大家前来,共同研究php以及共同解决BUG,106243666
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:JAVA
    上一篇:go语言以后会不会成为主流web开发语言? 下一篇:如何评价2016年5月14日-15日 DevLink.cn 在北京举办的第二届PHP全球开发者大会?
    Web大前端开发直播班

    相关文章推荐

    • 基于在生产环境中使用php性能测试工具xhprof的详解_php实例• php桌面中心(二) 数据库写入_php实例• 请教在linux下mysql不支持视图吗• 密码是什么啊该如何解决• 请问php高手!关于mongodb的应用有关问题

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网