Dev & EngARTIGO

Melhores de 2014 – Código bom é código performático

Separei 10 dicas de otimização de código para ajudar no aumento de performance.

Todo desenvolvedor precisa ter a consciência de que é preciso otimizar o código desde o início da codificação. Seguir boas práticas de codificação é o ponto de partida para escrever um código otimizado e legível.

Separei 10 dicas de otimização de código para ajudar no aumento de performance.

1. Use funções nativas do PHP

Sempre que possível, utilize as funções nativas do PHP↳PHP44 conteúdosPadronizando seu código com PHP CS FixerDev (Back & Front) · mai 2019Docker de imagem. Para rodar projetos PHP em menos de 30 segundosDev (Back & Front) · jan 2026PHP 7.3: conheça as novidades desta versãoDev (Back & Front) · abr 2019Ver tudo em Dev (Back & Front) → ao invés de escrever suas próprias funções para atingir o objetivo. Caso ainda não esteja totalmente familiarizado com a linguagem, procure no manual se a função que você quer existe.

2. Prefira utilizar aspas simples

Aspas simples ( ‘ ) é mais rápido que aspas duplas ( “ ). Quando você usa a aspa simples entende-se que o conteúdo é um string, porém quando você utiliza aspas duplas, o compilador verifica se existe a presença de alguma variável dentro da string e isto adiciona uma sobrecarga desnecessária.

3. Use funções de string apropriadas

A função str_replace é mais rápida que o preg_replace, mas a strtr é quatro vezes mais rápida que a str_replace.

4. Defina o valor para a variável

Por exemplo, o seguinte irá degradar o desempenho.

for ($ i = 0; i <count($num); $ i + +) {
   echo $num; 
}

O script abaixo terá um desempenho muito melhor.

$total = count($num);

for ($ i = 0; i <$total; $ i + +) {

echo $total;

}

5. Não crie Classes sem necessidade

Não crie Classes e Métodos até que seja realmente necessário e principalmente que possam ser reutilizados.

6. Use técnicas de caching

Utilize cache para reduzir as conexões/carga ao banco de dados↳Banco de dados134 conteúdosSQL ou NoSQL: eis a questão!!Data · mar 2020Banco de dados: como organizar e dar segurança para milhões de dados de loteriasData · mai 20215 serviços gratuitos na cloud para bancos de dados PostgresData · fev 2025Ver tudo em Data → e a compilação script. Uma boa opção para reduzir as conexões/carga ao banco de dados é o Memcache e o APC para o cache opcode e otimização do código intermediário.

7. Feche a conexão

Adquira o hábito de fechar a conexão com o banco de dados; isto economiza memória.

8. Reduza os acessos ao BD

Reduza a quantidade de acessos ao banco de dados. Faça consultas utilizando o menor número de conexões possível. Por exemplo:

$con = mysql_connect ("localhost", "username", "senha", "database");

if (mysql_connect_errno ())
{

echo "Falha ao conectar ao MySQL";
mysql_connect_error ();

}

function insertValue ($ val) {

mysql_query( "INSERT INTO Table ( $val )" );

}

for ($ i = 0; $ i <99; $ i + +) {

// Invocando a função para inserir os dados
insertValue $(i);

}

// Fechando a conexão como a melhor prática!
mysql_close ($con);

O script acima é muito mais lento do que o script abaixo:

$con = mysql_connect ("localhost", "user", "passwd", "database");

if (mysql_connect_errno ())
{

echo "Falha ao conectar ao MySQL";
mysql_connect_error ();

}

function insertValues ​​( $val ) {

// Inserindo com todos os 99 valores, utilizando apenas um INSERT.
$ query = "INSERT INTO Table ( ".implode(',', $ val)." )";
mysql_query ($con, $query);

}

$dados = array();

for ($ i = 0; $i<99; $ i + +) {      

// Criação do vetor com os dados.      
$ dados[] = $i;    

}    

// Invocando a função para inserir os dados
insertValues ​​($ dados);    

// Fechando a conexão como uma boa prática!   
mysql_close ($con); 

9. Use JSON

Use JSON em vez de XML sempre que trabalhar com aplicativos web. Existem funções nativas no PHP para trabalhar com JSON, como json_encode () e json_decode () e estas funções são extremamente rápidas.

10. Use Isset

Sempre que possível, use isset () em vez de usar strlen(), count(), ou sizeof() para verificar se o valor retornado é maior que 0. Por exemplo, você tem uma função que retorna uma variável, quer verificar se possui valores ou não, use o seguinte:

if ( isset($returnValue) ) {    

// Fazer algo aqui 

} 

Neste caso, use o bloco de código acima, em vez de o seguinte:

if (count($returnValue) 0) {

// Fazer algo aqui

}

15 anos de experiência na área de TI, com atuação em desenvolvimento e gestão de equipes de TI. Especialista na arte de construir aplicações de alta performance e seguras, com base em tecnologias open source, para médias e grandes empresas. Realiza contribuições constantes em projetos open source.

Mais de Renato Marinho
Ver perfil →
Leia também