Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何增加我的;“高级”;进一步了解PHP?(快速)_Php_Structure_System Design - Fatal编程技术网

如何增加我的;“高级”;进一步了解PHP?(快速)

如何增加我的;“高级”;进一步了解PHP?(快速),php,structure,system-design,Php,Structure,System Design,我已经使用PHP多年了,对该语言有了很好的掌握,创建了许多先进的和不太先进的系统,这些系统都工作得很好 我遇到的问题是,只有当我发现自己需要一些以前从未学过的东西时,我才会学习。这会让我查找解决方案和其他处理该问题的代码,因此我将了解一个以前从未见过的新函数或结构。正是通过这种方式,我学会了许多更好的技巧(比如学习亚马逊、谷歌或其他大公司开设的课程) 这方面的主要问题是,如果你不知道某件事的存在,就无法学到它。例如,我花了几个月的编程时间才了解了empty()函数,我只需要使用strlen()检

我已经使用PHP多年了,对该语言有了很好的掌握,创建了许多先进的和不太先进的系统,这些系统都工作得很好

我遇到的问题是,只有当我发现自己需要一些以前从未学过的东西时,我才会学习。这会让我查找解决方案和其他处理该问题的代码,因此我将了解一个以前从未见过的新函数或结构。正是通过这种方式,我学会了许多更好的技巧(比如学习亚马逊、谷歌或其他大公司开设的课程)

这方面的主要问题是,如果你不知道某件事的存在,就无法学到它。例如,我花了几个月的编程时间才了解了
empty()
函数,我只需要使用
strlen()
检查字符串长度来检查空值

我现在正着手构建越来越大的系统,我开始阅读highscalability.com等博客,并一直在研究MySQL复制和服务器数据以进行扩展。我知道代码的结构对于整个系统的工作非常重要

在阅读了最近一篇关于reddit结构的博客后,我不禁怀疑是否存在一些标准或“公认的系统”

我研究过框架(我使用了Kohana,对此我感到遗憾,但认为PHP框架不适合我),我更喜欢自己的函数库,而不是框架

我目前的结构是WordPress、Kohana和我自己的知识的混合体

我认为可能有益的方式有:

  • 阅读博客
  • 阅读教程
  • 与他人合作
  • 读书

作为一名优秀的系统开发人员,“进入下一个层次”的最佳方式是什么?

学会做你已经知道的事情。。。以不同的方式。示例:

  • 用另一种语言
  • 在不同的平台上
  • 并行/分布式
  • 通过一个框架(是的,你决定它们“不适合你”-也许尝试一个不同的框架,它们有时彼此非常不同)

    • 每个想成为PHP程序员的人,总是只接受第一个词,而完全忽略第二个词

      虽然“编程”比“PHP”重要得多,但要成为一名PHP专业人士,首先应该是一名程序员

      所以,我会投票支持最后一个——读书。不是在PHP上,而是在一般编程上。”s、 甚至是老人家的。

      还可以看看其他一些语言,比如Java或Python。不是切换到它们,而是从中学习。

      您应该使用示例,在扩展示例时使用它们,这样您将学习如何通过使示例更具功能和提供更多功能来扩展示例


      尽管如此,在PHP中创建一些您已经学到的东西还是不错的。为了进行更多的练习,您应该创建一个类似于预订系统等的东西。当您在PHP中学习得更多时,您迟早会通过学习更多内容来扩展更多内容,这将使您的开发变得更好。

      以下是一些想法:

      • 尝试不同的事情。学习一门新语言。有时候,在学习另一种语言的过程中,这两种语言都能让你学得更好

      • 为开源项目做贡献

      • 高可扩展性和PHP/MySQL不是朋友。今天有一些技术正是为此而开发的。node.js和Redis来命名一对

      • 用SO回答问题。其他人的问题会让你跳出框框思考,你会在尝试帮助别人的过程中有所改进,你也会对别人做一些好事

      • [如果我想起我刚醒来喝咖啡时的其他事情,请尝试在此处添加:D]


        • 你能做的就是买一本关于高效算法的书。在每个计算机科学学生的生活中,总有一段时间他/她必须学习这些。这里讨论/解决的问题是你可能遇到的几乎任何现实世界问题的抽象

          除此之外,阅读关于其他人是如何做到这一点的博客是非常好的,因为它可以帮助你理解如何实际使用(甚至可能实现)高效算法的原理

          关于。

          “我自己的函数库”==“一个[独特而且可能很糟糕的]框架”

          我建议学习,因为开发人员似乎一直努力按照“最佳”实践来做每件事。。。但您可能会从任何流行的框架中学到很多东西


          不要编写自己的框架。请。

          您可以询问您的公司是否可以为您支付Zend PHP认证考试费用。为这次考试而学习将迫使您熟悉PHP,并通过阅读大量文档、Zend学习指南以及模拟考试进行培训。这是一种非常有效的改进方法,在简历上看起来也很不错。

          我会加入讨论会,尝试解决其他人的问题。有时,有些相当具有挑战性的问题迫使你做一些研究。如果你不能回答,你可以等一个能回答的人,然后再学习

          至于框架,从中学习。我也推出了自己的框架,因为大多数框架都可能相当缓慢。虽然对大多数网站来说速度足够快


          我还建议您看看Facebook的PHP库。他们在那里做了一些有趣的事情。

          与其他开发人员合作是不够的。我特别认识3位开发人员,其中2位是我每天都在一起工作的,他们的知识让我大吃一惊。我问他们对我所做的每件事的意见,不是因为我猜测自己的想法,而是我想听到的更多