Escrevo em PHP há 12 anos e até vi a tradução de projetos de PHP 4 para PHP 5. Já então, após a formatura, percebi o quão baixo é o nível da maioria das pessoas escrevendo em PHP. O legado pesado do PHP 4, a baixa complexidade algorítmica e estrutural dos projetos (mesmo com uma grande base de código), a escolha nº 1 para pequenas empresas, tudo isso fez seu trabalho. A comunidade não era profissional e eu não gostava disso. Mas o que está acontecendo agora é ainda pior.
Uma breve introdução para quem não acompanhou o desenvolvimento de PHP nos últimos 10 anos. Hoje, a linguagem se assemelha ao Java em termos de recursos e estilo moderno de codificação. Temos boas interfaces, classes, características, namespaces, dicas de tipo, estruturas de nível corporativo, um bom gerenciador de pacotes com rastreamento de dependência. O interpretador foi concluído e gradualmente tornou-se possível escrever daemons de longa duração e servidores assíncronos com bom desempenho. Conjunto padrão de linguagem de programação industrial em 2020. Algo está melhor, algo pior, mas todo mundo tem falhas.
Junto com o idioma, o caráter de quem nele escreve também mudou. As pessoas que escreviam no estilo PHP 4 eram e serão, embora o PHP 8 tenha sido lançado no mês passado, mas também existem aqueles que poderiam ser chamados de os astronautas menos ofensivos da arquitetura. Você provavelmente já ouviu falar mais de uma vez sobre padrões, SOLID, KISS, DRY, YAGNI, a diferença entre uma interface e uma classe abstrata, etc. Até 5 anos atrás, essa era a norma para a cultura C # / Java, mas agora esses são tópicos típicos na comunidade PHP.
É bom e maravilhoso que coisas do mundo da grande engenharia de software tenham chegado ao nosso mundo também. O ruim é que em 99% dos casos não é necessário aqui. Pior, muitos dos autores que discutem as abreviações acima não entendem completamente com o que estão lidando. E, provavelmente, o pior é que agora o mundo do PHP não está sendo negado por nenhuma prática acadêmica, mas por teóricos profundos, acadêmicos do arado. Embora a complexidade dos projetos disponíveis no mercado de trabalho não tenha mudado drasticamente, essa acadêmica tem um lugar por onde vagar.
PHP — symfony/laravel + mysql/postgresql/mongo + redis + rabbitmq + elk. , , , . , PHP , , , SOLID. , , , , .
, . , . , , . . , , — , () .
, . . -. , , . , , , -, .
SOLID . , . , mock- . , , . — . — .
, Drupal - . , ! - CMS , , , . , .
PHP , , . , , . , , . , , , . . PHP- Java- .
PHP Java — , , , . PHP . enterprise . , . — , - . , , -, .
PHP , Java, Javascript, . , web-. , , , . .
- . - , . « — » , . «SOLID », « ». , . — , , - . , .