Queria começar com algo bem leve, deixar a programação pesada mais pra frente.
Como você escreve seus códigos? Eu apenas vi um blog falando sobre uma parte do assunto que quero comentar aqui e foi no clientside. O post era sobre: Devo usar ponto-e-vírgula?
Em Javascript, não é necessário realmente o uso do ponto-e-vírgula e meu estilo de programar é parecido com o do Elcio neste aspecto. Eu me importo com a apresentação do código, seja lá qual for a linguagem, então além de me preocupar com a lógica do programa, na sua reutilização, na sua generalização, eu também me importo com a sua "cara".
Vou mostrar o que eu estou querendo dizer, implementando uma classe:
function Pessoa(nome, idade, sexo, profissao){
var nome = nome
var idade = idade
var sexo = sexo
var profissao = profissao
this.fala = function(fala){
if(typeof fala=="string"){
alert(fala)
}
else{
alert("O tipo de fala precisa ser uma string!!!")
}
}
}
Normal certo?
O meu jeito de codificar:
function Pessoa
(nome, idade, sexo, profissao){
var nome = nome
var idade = idade
var sexo = sexo
var profissao = profissao
this.fala = function(fala){
(typeof fala=="string") ?
alert(fala) :
alert("O tipo de fala precisa ser uma string!!!")
}
}
Faz exatamente a mesma coisa, não tem nenhum ganho de velocidade nem nada do tipo. Mas pessoalmente acho muito mais bonito dessa forma, sem chaves caso tiver apenas uma instrução, sem ponto-e-vírgulas e quando o número de parâmetros for grande, quebro a linha no prototipo da função e SEMPRE indentando.
Isso ajuda na documentação do script, ajuda aos meus olhos e ajuda a me achar no meio de um código gigantesco.
É a mesma coisa com arrays:
var lista=new Array()
lista[0]="Pera"
lista[1]="Uva"
lista[2]="Maça"
lista[3]="Salada Mista"
Forma que eu prefiro:
var lista = [
"Pera",
"Uva",
"Maça",
"Salada Mista"
]
Chamada de funções:
var Edu = new Pessoa(
"Eduardo Ottaviani",
24,
"Masculino",
"Programador"
)
Concatenação de strings:
ajax.url = (
"pagina.php?sid=" +
Math.random() +
"&query=" +
document.forms[0].elements[0].value
)
Antigamente não se usava muito essa forma de codificar, mas depois dos "callbacks" usados em algumas bibliotecas Javascript como Jquery, onde você muitas vezes precisa passar uma função como argumento, essa maneira começou a ficar mais comum.
Fica horrível fazer a chamada de uma função passando vários argumentos numa linha só!!!
Eu gosto de generalizar os códigos para que fiquem úteis em outras aplicações, geralmente antes de fazer um function eu já planejo onde eu posso usar aquilo mais tarde. Nessas, às vezes é necessário usar 1 ou 2 argumentos a mais na função, então sempre utilizo a forma mais "bonita" de codificar.
Enfim, é a maneira que eu sinto mais confortável, então não estranhe porque a partir deste post, todos os outros terão esse mesmo padrão de codificação.
Um abraço.