Boas práticas de programação são um conjunto de regras informais que visam melhorar a qualidade das aplicações e simplificar a sua manutenção, reduzindo significativamente a probabilidade de erros em suas aplicações, além de facilitar o entendimento de novos códigos de forma rápida e completa.

Esta seção apresentará as convenções recomendadas para Titan Framework, que está sendo adequado às normas propostas no modelo de convenções do PSR (PHP Standards Recommendation). O objetivo de abordar este tema agora é garantir que as diretrizes elencadas sejam seguidas desde as primeiras instâncias desenvolvidas pelo leitor.

Convenções para o Banco de Dados

  • O nome de todas as entidades do banco de dados devem estar em inglês;
  • O nome de todas as entidades do banco de dados devem estar no singular;
  • O nome de todas as entidades do banco de dados devem estar em caixa baixa (lower case);
  • Entidades “mandatórias”, ou seja, cujo a existência, o nome ou o comportamento não possam ser parametrizados pelos arquivos de marcação da instância, devem ser precedidas por **underscore** (por exemplo, o componente nativo “global.generic” necessita que as tabelas que representam o modelo de dados de suas seções tenham as colunas “user**”, “create” e “_update**”); e
  • Caso o nome da entidade seja composto de duas ou mais palavras, elas devem estar separadas por underscore (p.e., “my_table”).

Convenções de Código

  • Os nomes de variáveis, funções, classes e demais entidades devem estar em inglês;
  • Os nomes de variáveis locais, atributos e funções devem estar em Camel Case (a primeira palavra do nome é iniciada por letra minúscula, a próxima palavra é iniciada com maiúscula e todas são unidas sem qualquer caracter), tal como “$myFirstVar” ou “myFunction ()”;
  • Caso seja um atributo de classe privado, o nome deve ser precedido com um underscore (p.e., “$_myPrivateAttribute”);
  • Os nomes das classes devem estar em Pascal Case (todas as palavras são iniciadas maiúsculas e são unidas sem espaço), tal como “MyClass”;
  • Os nomes das variáveis globais devem estar em caixa alta (upper case), tal como “$_MY_VAR”;
  • O nome das constantes devem estar em caixa alta (upper case), tal como “MY_CONST”;
  • Utilize Orientação a Objetos e suas boas práticas;
  • Busque manter funções pertinentes dentro das classes (mesmo que sejam métodos estáticos);
  • Todas as tags e atributos em XML devem possuir apenas letras minúsculas (lower case);
  • Sempre quebre a linha após ponto-e-vírgula, antes de um operador ou antes de abrir chaves (delimitador de escopo);
  • Sempre utilize tabulação para a identação (jamais utilize o “espaço”). Se necessário, configure na IDE de desenvolvimento pois algumas, por padrão, utilizam o caracter de espaço;
  • Sempre feche parênteses e chaves na mesma coluna ou na mesma linha em que foram abertos;
  • Busque utilizar linhas em branco entre funções e métodos, entre classes e entre expressões com variáveis distintas;
  • Em todos os arquivos deve-se utilizar o padrão de cabeçalhos e comentários especificado pelo PHPDoc;
  • Sempre que aplicável, utilize Design Patterns;
  • Jamais utilize deprecated features; e
  • Jamais utilize short open tags (‘<?’) para abrir blocos de código PHP, ou seja, utilize sempre a notação longa (‘<?php’).