Endereço original: http://nettuts.com/tutorials/php/10-principles-of-the-php-masters/
Tradução e edição: Andrew, indique a fonte se precisar reimprimir.
1. Use PHP quando estiver certo - Rasmus Lerdorf
Ninguém entende onde o PHP deve ser usado de forma mais racional do que Rasmus Lerdorf, o criador do PHP. Ele lançou a linguagem PHP em 1995. Desde então, o PHP tem sido como um fogo na pradaria, queimando todo o campo de desenvolvimento. Internet. Porém, Rasmus não criou o PHP por esse motivo. O PHP nasceu para resolver problemas práticos de desenvolvedores web.
Como muitos projetos de código aberto, o PHP se tornou popular. A motivação para sua popularidade não pode ser explicada pela filosofia normal, e é tão popular que é um tanto auto-admirável. Pode ser usado como um caso, um caso causado pela necessidade de ferramentas para resolver vários problemas da web. Portanto, quando o PHP apareceu pela primeira vez, todas essas necessidades de ferramentas estavam focadas no PHP.
No entanto, você não pode esperar que o PHP resolva todos os problemas. Lerdorf é o primeiro a admitir que o PHP é apenas uma ferramenta, e há muitas situações em que o PHP está além de suas capacidades.
Escolha a ferramenta certa para o trabalho. Já procurei muitas empresas para convencê-las a implantar e usar PHP, mas isso não significa que o PHP seja adequado para todos os problemas. É apenas uma linguagem de script front-end que pode resolver a maioria dos problemas.
Como desenvolvedor web, tentar resolver todos os problemas com PHP não é científico e é uma perda de tempo. Quando o PHP não funcionar, não hesite em tentar outras linguagens.
2. Use armazenamento multi-tabelas para melhorar a escalabilidade - Matt Mullenweg
Ninguém quer questionar a autoridade de Matt Mullenweg em PHP. Ele desenvolveu o sistema de blog mais popular do planeta (apoiado por uma comunidade forte): WordPress. sua equipe lançou a plataforma WordPress.com, um blog gratuito baseado no WordPress MU. Hoje, o WordPress.com tem aproximadamente 4 milhões de usuários, que contribuem com mais de 140 mil postagens todos os dias. (Para ver mais estatísticas do WordPress.com, clique aqui.)
Se alguém sabe como fazer um site crescer facilmente, esse alguém é Matt Mullenweg. Em 2006, Matt fez melhorias futuras na estrutura de dados do WordPress e explicou por que o WordPress MU usa tabelas MYSQL independentes para cada blog em vez de colocar todos os dados do blog em uma tabela enorme.
Testamos essa abordagem, mas achamos que era muito cara para escalar. Se você usar uma estrutura de dados geral, enfrentará problemas de hardware do servidor diante de um grande tráfego. Dentro do MU. Os usuários são distribuídos em tabelas separadas e podem ser facilmente organizados. Por exemplo, o WordPress.com armazena dados de usuários em 4.096 bancos de dados. Esses bancos de dados podem dispersar o acesso a dados em grande escala e desviar o tráfego e a pressão.
A portabilidade das tabelas de dados permite que o código (blog) rode mais rápido e torna o sistema mais escalável. Contando com estratégias poderosas de cache e estratégias flexíveis de utilização de banco de dados, Matt mostrou às pessoas que o Facebook e o WordPress.com mais populares podem funcionar de forma estável em PHP e lidar com uma quantidade surpreendente de tráfego.
3. Nunca confie nos usuários - Dave Child
Dave Child é o coração do Added Bytes (anteriormente ilovejackdaniels.com), um site famoso por suas excelentes folhas de dicas para muitas linguagens de programação. Dave trabalha para diversas empresas do Reino Unido e se estabeleceu como uma autoridade no mundo da programação.
Dave fornece muitos conselhos atenciosos para desenvolvedores de PHP, resumidos em "escrever código seguro em PHP": Nunca confie em seus usuários, eles podem até prejudicá-lo.
Existe um princípio básico de desenvolvimento web que não posso repetir o suficiente: nunca confie em seus usuários e presuma que cada unidade de dados em seu site é um código malicioso coletado dos usuários. Muitas vezes é necessário usar JavaScript para verificar o conteúdo enviado pelo formulário no cliente. Se você está acostumado com isso, então este é um bom hábito. Se a segurança é importante para você, este é o princípio mais importante a aprender.
Dave está atualmente trabalhando na compilação de exemplos para sua série de livros "Writing Secure PHP". No final do livro, ele disse:
Finalmente, fique um pouco paranóico. A menos que você pense que seu site nunca será atacado, enfrente o problema de frente, porque quando isso acontecer, você estará em uma situação ruim. Você precisa considerar cada usuário como um hacker que irá atacar e defender o site, fazer todo o possível para proteger a segurança do site e, ao mesmo tempo, pensar em soluções para os problemas correspondentes.
4. Use mais cache PHP - Ben Balbo
Ben Balbo desenvolve o Site Point, um site que fornece orientação para desenvolvedores e designers. Ele é membro do Melbourne PHP Development and Open Source Club, portanto, tem um certo conhecimento de PHP e certas idéias e experiência em cache de PHP.
Se você tem um site que tem muito tráfego, mas não é atualizado com frequência (como um blog, baseado em algum tipo de CMS), talvez ele precise de algumas modificações. Essas modificações não levarão muito tempo, mas farão uma diferença significativa. contribuição para o desempenho. Se você deseja estabelecer um mecanismo de cache para um site complexo/de atualização rápida, o processo pode ser tortuoso, mas os benefícios são óbvios.
Existem muitas tecnologias de cache PHP. Ben recomendou as seguintes para nós:
função de cache executando resultados configurando tempo de expiração modelo de arquivo em cache tecnologia de cache baixada pelo IE.
Cache_Lite
Devido às características do PHP como linguagem dinâmica, o mecanismo de cache é muito importante para sites que não são atualizados com frequência.
5. Acelere o desenvolvimento de PHP com IDE, modelos e snippets - Chad Kieffer
Quando Chad Kieffer estiver longe do design de UI e do trabalho de otimização de banco de dados, ele compartilhará muita experiência técnica em seu blog 2 colheres de sopa. Devido ao desenvolvimento abrangente de Chad em muitos aspectos, ele muitas vezes pode encontrar problemas que outros programadores não conseguem encontrar e adquirir experiência relevante, especialmente seu método de desenvolvimento de sites. Ele está envolvido em todos os aspectos do desenvolvimento de sites, portanto, seus conselhos são muito úteis para melhorar o panorama geral do desenvolvimento de sites.
Chad pensa em usar Eclipse PDT
(Pacote de desenvolvimento PHP do Eclipse) Tal IDE, embora use algumas tecnologias de modelo e projetos de código aberto, pode efetivamente aumentar a velocidade de desenvolvimento PHP.
Planos rígidos, listas de tarefas longas e prazos deixam os desenvolvedores muito frustrados. No entanto, alguns recursos, como modelos Eclipse, podem reduzir efetivamente o tempo de codificação e a chance de erros.
De modo geral, qualquer projeto pode ser automatizado e, quanto maior o grau de automação, menor será o tempo necessário para concluir o projeto. Reservar um tempo para desenvolver estruturas e modelos que serão usados com frequência economizará ainda mais tempo posteriormente. Ao mesmo tempo, usando um IDE como o Eclipse e o pacote PDT, você descobrirá que sua eficiência é significativamente melhorada. O IDE pode fechar automaticamente, completar ponto-e-vírgula e depurar localmente.
Postagens relacionadas:
O WordPress foi atualizado com sucesso para 2.3.2 Embora as tags não sejam úteis para mim, ainda atualizei por motivos de segurança, realmente preciso de uma cópia da atualização do 2.0.5 de dois anos atrás para o 2.3.2 atual. Coragem e determinação, felizmente não houve problemas ao executar a atualização localmente, mas as funções do template precisavam de algumas modificações simples. A atualização online correu bem. Muitas pessoas estarão se perguntando: você não acabou de postar uma postagem pedindo ajuda com o método de atualização? Bem, eu encontrei a melhor ferramenta, o plugin de atualização automática do WordPress. Este plugin de atualização automática do WordPress realmente torna sua atualização sem preocupações, porque fará backup de todos os arquivos e dados para você antes de atualizar. ". ", acredito que seja muito adequado para blogueiros que não querem se preocupar com a atualização. No entanto, há um problema com a função de exportação após a atualização. não foi encontrado. Não sei se esse problema é comum ou é um problema do meu blog, amigos que encontrarem o mesmo problema, por favor, deixem-me uma mensagem e irei pesquisar uma solução. (Após pesquisa, descobriu-se que havia um problema com o caminho de acesso no plug-in coolcode. Desde que a ativação deste plug-in seja cancelada, a função Exportar pode ser usada normalmente)...
Alguém tem experiência em atualizar do WordPress 2.0? Baixei o wordpress-2.3.2 hoje e originalmente queria atualizar, mas descobri que o salto de versão é muito grande e as mudanças na estrutura de dados parecem ser muito grandes. o risco é muito grande, então desisti por enquanto. Quem? Um amigo tem experiência em atualizar o WordPress de 2.0 para 2.3. ...
Tradução: "14 ótimas ferramentas para webmasters" (Parte 2) Texto original: http://www.conversion-rate-experts.com/articles/understanding-your - Visitors/ Este artigo foi escrito por Andrew( http://www . achome.cn ) é traduzido de forma independente. Se precisar reimprimir, indique a fonte. Os usuários são o melhor pessoal de publicidade e vendas, venha e ouça como eles o promovem, Tell-a-Friend King - experimente agora! Você tem um sistema de recomendação de usuários? Um sistema que permite aos usuários enviar mensagens para convidar amigos. Podemos perceber que as cartas enviadas por esses usuários contêm a resposta à pergunta “Por que os usuários gastam dinheiro no seu site?” Muitas pessoas passam muito tempo se posicionando e desenvolvendo palavras publicitárias atraentes, mas por meio de depoimentos de usuários, você pode descobrir por que os usuários preferem você. Colete facilmente o feedback do usuário, Kampyle - experimente agora! Kampyle permite que os usuários enviem feedback do usuário em seu site (por meio de um pequeno botão na parte inferior da página). Após clicar, uma janela aparecerá para os usuários preencherem suas opiniões e). sugestões. Os webmasters podem fazer login no site oficial do Kampyle para visualizar e gerenciar os comentários coletados dos usuários. Se os usuários deixarem seus endereços de e-mail, os webmasters poderão notificar facilmente os usuários de que receberam comentários e farão as melhorias correspondentes. ...
6. Faça bom uso das funções de filtro do PHP - Joey Sochacki
Talvez Joey Sochacki não seja tão famoso quanto Matt Mullenweg, mas ele também é um desenvolvedor experiente e compartilha muita experiência técnica através de seu blog Devolio.
Joey descobriu que escrever código PHP existe. muitos lugares que precisam ser filtrados no processo, mas poucos programadores prestam atenção à função de filtragem integrada do PHP.
Filtrar dados é algo que precisamos fazer com frequência, mas muitas funções de filtragem integradas do PHP, ricas em recursos, são desconhecidas. Usando funções integradas do PHP como filter_*, podemos lidar com quase todas as tarefas de filtragem, incluindo validação de tipo de dados/URL/e-mail e validação de endereço IP/processamento de caracteres especiais, etc.
Filtrar é uma coisa complicada, mas acredito que a descoberta de Joey lhe dará muita inspiração e permitirá que você perceba a poderosa função de filtragem do PHP.
7. Use framework PHP - Josh Sharp
Tem havido muita controvérsia sobre se você deve usar Zend, CakePHP, Code Igniter ou outros frameworks PHP, mas na mente dos desenvolvedores web, eles têm seus próprios padrões de medição.
Josh Sharp criou seu próprio site básico, então ele tem alguma experiência no uso de estruturas PHP para desenvolver sites. Ele acredita que usar um framework PHP para desenvolvimento de projetos pode efetivamente economizar tempo e reduzir a chance de erros. Por que? Porque ele acha que PHP é realmente fácil de começar.
A facilidade de uso do PHP às vezes tem suas deficiências, porque sua sintaxe frouxa geralmente leva à criação de muitos códigos errados. Mas se você usar um framework PHP, a chance de erros será bastante reduzida.
A estrutura PHP pode tornar sua estrutura de código mais padronizada e economizar muito tempo. Você pode ler "Benefícios de usar uma estrutura PHP" para obter informações mais relevantes.
8. Não use frameworks PHP – Rasmus Lerdorf
é exatamente o oposto do ponto de vista de Josh Rasmus Lerdorf, o criador do PHP, acha que é melhor não usar frameworks PHP. Porque o PHP que não é baseado em um framework tem melhor desempenho.
Em seu discurso no Drupalcon 2008, Rasmus usou o exemplo "Hello World" para comparar o desempenho entre alguns frameworks PHP e PHP simples. Os resultados mostraram que o desempenho do framework PHP estava muito atrás.
9. Use processamento em lote - Jack D. Herrington
Jack Herrington conhece bem o mundo PHP e contribuiu com mais de 30 artigos para o famoso IBM developerWorks, e também publicou o livro "PHP Hacks", então ele é um verdadeiro especialista.
Herrington recomenda o uso de processamento em lote e Cron para substituir scripts de programa que podem ser executados em segundo plano. Os usuários da Web não estão dispostos a esperar pelo seu processamento on-line, portanto, algumas coisas são mais adequadas para serem processadas em segundo plano.
É verdade que isso é um exagero em alguns casos, mas você pode ver claramente que criar uma ferramenta de processamento em lote usando Cron, MySQL, métodos orientados a objetos PHP e Pear::DB não é uma tarefa simples.
Jack acredita que usar cron, PHP e MySQL para processar algumas tarefas em segundo plano é muito mais econômico do que lógica de negócios multiprocessos.
Eu tentei os dois métodos e acho que o Cron é muito consistente com o princípio "Keep It Simple, Stupid" (KISS), que simplifica o processamento em segundo plano. Comparado com a lógica de negócios multiprocessos, não há risco de estouro de memória. Você pode criar um script em lote simples e executá-lo no cron. Este script verificará regularmente se há tarefas que precisam ser processadas e será encerrado automaticamente após o processamento, para que você não precise se preocupar se um processo está travado ou não. preso em um loop infinito.
10. Habilite relatórios de erros em tempo hábil - David Cummings
David Cummings tem uma empresa especializada no fornecimento de serviços de software CMS e ganhou vários prêmios. Ele tem uma experiência muito rica em desenvolvimento de PHP.
Certa vez, David escreveu "duas dicas de PHP que ele gostaria de ter aprendido no início", uma das quais é: habilitar o relatório de erros a tempo, o que economizará muito tempo.
A coisa mais importante que digo às pessoas é maximizar o relatório de erros em PHP. Por quê? Como o PHP pode esconder muitos pequenos problemas:
variáveis não são predefinidas, variáveis que não estão disponíveis são referenciadas em trechos de código, constantes indefinidas são usadas, esses fatores podem não parecer grande coisa, a menos que você esteja escrevendo alguma biblioteca de classes usando um objeto abordagem orientada. Freqüentemente, desativar o relatório de erros provavelmente custará mais para manter seu código.
Os relatórios de erros podem ajudá-lo a encontrar facilmente problemas em seu código. Se o nível do relatório de erros for alto o suficiente, erros sutis poderão ser descobertos imediatamente, ajudando você a economizar tempo geral de depuração.