Skip to content

Escreva código mais legível com as seguintes dicas

Quando o programa é escrito apenas por nós, é relativamente fácil entendê-lo porque nós "entendemos" a nós mesmos.

Mas acontece que a maioria dos programas que você cria pode ser feita com outras pessoas. E mesmo que você faça sozinho, não seria bom se os outros pudessem entendê-lo?

É por isso que eu trago para você este guia de diretrizes baseado no padrão de programação em JavaScript.

Diretrizes

O objetivo de criar este guia é padronizar a forma como o código desenvolvido é escrito. Isso é para unificar critérios, reduzir o tempo de análise e facilitar o entendimento e a atualização de código escrito anteriormente. Este guia tem exemplos em JavaScript e PHP.

Comentários

Regras gerais para adicionar comentários.

JavaScript

javascript
// não comece comentários com letra maiúscula nem os termine com um ponto '.'

/**
 * Comece comentários de várias linhas com letra maiúscula 
 * Principalmente porque eles são geralmente usados para documentar grandes
 * blocos de código, como funções, por exemplo
 */

/* use espaços entre as barras de comentário */

let x = 'x'; // deixe um espaço entre o fim da declaração e as barras '//'

Variáveis

Declaração de variáveis

Ao declarar variáveis, evite deixar o valor inicial como null. Coloque um espaço entre variável = e seu valor.

JavaScript

javascript
// evite usar 'var' para declarar variáveis
let string = ''; // variável inicializada como 'string'
let number = 0; // variável inicializada como 'number'
let object = {}; // variável inicializada como 'object'
let array = []; // variável inicializada como 'object'

PHP

php
$string = '';       // variável inicializada como 'string'  
$number = 0;        // variável inicializada como 'number'
$array = [];      // variável inicializada como 'array'

Operações em variáveis

É recomendado deixar espaços entre os operadores ao realizar operações em variáveis.

JavaScript

javascript
let one = 1;
let two = 2;
let three = one + two;
let four = one * 2 + two;

PHP

php
$one = 1;
$two = 2;
$three = $one + $two;
$four = $one * 2 + $two;

Comparação de dados

É recomendado usar operadores de comparação tripla === em vez de ==

Isso ocorre porque a comparação tripla === verifica se tanto o valor quanto o tipo de dados são iguais.

javascript
if ('25' == 25) {
  // comparação bem-sucedida
}
if ('25' === 25) {
  // comparação falhou já que compara o tipo de dado 'string' com 'number'
}

Strings

É recomendado usar aspas simples '' para manipulação de strings.

javascript
let x = 'string';
if (x === 'string') {
  // condição bem-sucedida
} else {
  // condição malsucedida  
}

Validações

Se você quiser validar se uma variável com a qual está lidando é de um tipo de dado específico, pode usar os seguintes métodos de validação.

JavaScript

javascript
// valide se é do tipo inteiro
let num = 0;
if (typeof num === 'number') {
  // validação bem-sucedida
}

// valide se é do tipo string  
let str = 'hello';
if (typeof str === 'string') {
  // validação bem-sucedida
}

// valide se é um objeto
let obj = {};
if (typeof obj === 'object') {
  // validação bem-sucedida  
}

// valide se é um array
let arr = [];
if (Array.isArray(arr)) {
  // validação bem-sucedida
}

// valide se é booleano
let bool = true;
if (typeof bool === 'boolean') {
  // validação bem-sucedida
}

Usar typeof x === 'array' está errado porque arrays em JavaScript são objetos.

PHP

php
// valide se é do tipo inteiro
$num = 0
if (is_int($num)) {
  // validação bem-sucedida
}

// valide se é do tipo string
$str = 'hello'  
if (is_string($str)) {
  // validação bem-sucedida
}

// valide se é um objeto  
$obj = {}
if (is_object($obj)) {
  // validação bem-sucedida
}

// valide se é um array
$arr = []
if (is_array($arr)) {
  // validação bem-sucedida  
}

// valide se é booleano
$bool = []
if (is_bool($bool)) {
  // validação bem-sucedida
}

Funções

Declaração de funções e chamada de funções

Ao declarar funções, deve ser colocado um espaço entre a palavra-chave function, os parênteses () e a chave inicial {.

Isso é para diferenciar a declaração de uma chamada de função.

JavaScript

javascript
// declaração de uma função
function iAmAFunction() {
  console.log('Esta é uma impressão de texto');
}

// declaração de uma função em um objeto
let object = {
  iAmAFunction: function () {
    console.log('Esta é uma impressão de texto');
  },
};

// chamando uma função  
iAmAFunction();

PHP

php
// declaração de uma função
function iAmAFunction () {
  echo 'Esta é uma impressão de texto';
}

// chamando uma função
iAmAFunction();

Uso de funções nativas da linguagem

JavaScript considera um valor falso se for:

  • false
  • 0
  • '' ou ""
  • null
  • undefined
  • NaN (exemplo, divisões entre 0)

Condicionais if e else

javascript
if (condition) {
  // código para a primeira condição
} else if (anotherCondition) {
  // código para a segunda condição  
} else {
  // código para a terceira condição
}

// condições ternárias
let condition = true(condition) ? 'Condição atendida' : 'Condição falhou'; // condição atendida

Ciclos while e for

javascript
for (let a = 0; a < 10; a++) {
  // código repetitivo
}

while (true) {
  // código repetitivo  
}

do {
  // código repetitivo
} while (true);