Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
Identação - Para que serve e como usar
5 participantes
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
Identação - Para que serve e como usar
Identação! Pra que serve e como usar
Escrito por João Vitor (Fudêncioo)
Para que serve Identação
A Identação tem um papel muito importante para qualquer tipo de programação, seja ela em HTML, PHP, Delphi, GML, RGSS, etc.
Fazer a Identação de um código significa torná-lo mais legível. Mas como assim? Simples, veja um exemplo:
Código SEM identação
Código COM identação
Melhorou visualmente né? Agora um exemplo mais "complicado":
Código SEM identação
Código COM identação
Muito mais legível não acha?
Como usar
Pra usar não tem segredo, basta usa o TAB do seu teclado, alterando a posição da linha, veja a imagem abaixo:
Repare na linha vermelha, é o "bloco" do primeiro IF, todas as linhas que tem dentro do primeiro IF está alinhada mais a frente (com o TAB), agora veja a linha azul, é o "bloco" do segundo IF, as linhas correspondente ao segundo IF estão mais a frente ainda, repare também que até o segundo IF está alinhado no bloco do primeiro IF, porque? Porque o segundo IF faz parte do primeiro IF.
Usar ou não usar?
Eu não vou dizer eu é assim que tem que fazer e pronto, cada um faz do jeito que quer, mas vamos ver um exemplo, você está programando seu jogo, está todo bonitinho, ai chega em uma parte e acontece um erro! O que você faz? Vem aqui no fórum e pede ajuda, mas você precisa postar o código fonte (que você fez sem identação), imagina o tempo que levaria pra alguem ler todo o código, adivinhar onde cada coisa fica e postar alguma ajuda pra voce. Levaria tempo não? Mas se o código tiver identação, pode até levar um tempinho, mas garanto que será muito mais fácil de entender o código com identação do que sem identação.
Mas usar ou não usar a identação fica a critério de cada um, não gostou da identação? Boa sorte com seu projeto!
Espero que isso ajude alguem
Escrito por João Vitor (Fudêncioo)
Para que serve Identação
A Identação tem um papel muito importante para qualquer tipo de programação, seja ela em HTML, PHP, Delphi, GML, RGSS, etc.
Fazer a Identação de um código significa torná-lo mais legível. Mas como assim? Simples, veja um exemplo:
Código SEM identação
- Código:
if (piso_na_bosta) {
meu_pe_esta_sujo = true;
preciso_lavar = true;
} else {
meu_pe_esta_sujo = false;
preciso_lavar = false;
}
Código COM identação
- Código:
if (piso_na_bosta) {
meu_pe_esta_sujo = true;
preciso_lavar = true;
} else {
meu_pe_esta_sujo = false;
preciso_lavar = false;
}
Melhorou visualmente né? Agora um exemplo mais "complicado":
Código SEM identação
- Código:
if (piso_na_bosta){
if (bosta_de_vaca){
meu_pe_esta_sujo = true;
preciso_lavar = true;
perdi_meu_tenis = false;
} elseif (bosta_de_elefante){
if (pisei_pouco){
meu_pe_esta_sujo = true;
preciso_lavar = true;
perdi_meu_tenis = false;
} elseif (pisei_muito){
meu_pe_esta_sujo = true;
preciso_lavar = true;
perdi_meu_tenis = true;
}
} elseif (bosta_de_periquito){
meu_pe_esta_sujo = true;
preciso_lavar = false;
perdi_meu_tenis = false;
}
Código COM identação
- Código:
if (piso_na_bosta){
if (bosta_de_vaca){
meu_pe_esta_sujo = true;
preciso_lavar = true;
perdi_meu_tenis = false;
} elseif (bosta_de_elefante){
if (pisei_pouco){
meu_pe_esta_sujo = true;
preciso_lavar = true;
perdi_meu_tenis = false;
} elseif (pisei_muito){
meu_pe_esta_sujo = true;
preciso_lavar = true;
perdi_meu_tenis = true;
}
} elseif (bosta_de_periquito){
meu_pe_esta_sujo = true;
preciso_lavar = false;
perdi_meu_tenis = false;
}
}
Muito mais legível não acha?
Como usar
Pra usar não tem segredo, basta usa o TAB do seu teclado, alterando a posição da linha, veja a imagem abaixo:
Repare na linha vermelha, é o "bloco" do primeiro IF, todas as linhas que tem dentro do primeiro IF está alinhada mais a frente (com o TAB), agora veja a linha azul, é o "bloco" do segundo IF, as linhas correspondente ao segundo IF estão mais a frente ainda, repare também que até o segundo IF está alinhado no bloco do primeiro IF, porque? Porque o segundo IF faz parte do primeiro IF.
Usar ou não usar?
Eu não vou dizer eu é assim que tem que fazer e pronto, cada um faz do jeito que quer, mas vamos ver um exemplo, você está programando seu jogo, está todo bonitinho, ai chega em uma parte e acontece um erro! O que você faz? Vem aqui no fórum e pede ajuda, mas você precisa postar o código fonte (que você fez sem identação), imagina o tempo que levaria pra alguem ler todo o código, adivinhar onde cada coisa fica e postar alguma ajuda pra voce. Levaria tempo não? Mas se o código tiver identação, pode até levar um tempinho, mas garanto que será muito mais fácil de entender o código com identação do que sem identação.
Mas usar ou não usar a identação fica a critério de cada um, não gostou da identação? Boa sorte com seu projeto!
Espero que isso ajude alguem
Última edição por Alex FC em Dom 26 Jun 2011, 19:19, editado 2 vez(es) (Motivo da edição : título faltando letra)
Fudêncioo- Data de inscrição : 18/07/2008
Reputação : 0
Número de Mensagens : 5
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Identação - Para que serve e como usar
esse estilo de identação parece o pradrão do flash.
eu particularmente não gosto de usar os parenteses daquele jeito na frente, acho meio estranho.
meu estilo é assim:
Isso é importante.
Imagina só você numa equipe é começar a fazer "gambiarras" no codigo sendo que os outros programadores tambem precisam entender o que você fez.
Vai ser dispedido na hora.
Importante tambem é sempre comentar o codigo.
flw!
eu particularmente não gosto de usar os parenteses daquele jeito na frente, acho meio estranho.
meu estilo é assim:
- Código:
if estou_lendo_livro
{
estou_aprendendo=true
if livro_de_programacao profissionalismo+=10;
} else {
if fazendo_nada profissionalismo=0;
}
Isso é importante.
Imagina só você numa equipe é começar a fazer "gambiarras" no codigo sendo que os outros programadores tambem precisam entender o que você fez.
Vai ser dispedido na hora.
Importante tambem é sempre comentar o codigo.
flw!
Re: Identação - Para que serve e como usar
do Delphi e C++ também...kabecao escreveu:esse estilo de identação parece o pradrão do flash.
concerteza!kabecao escreveu:Isso é importante.
Imagina só você numa equipe é começar a fazer "gambiarras" no codigo sendo que os outros programadores tambem precisam entender o que você fez.
Vai ser dispedido na hora.
identação é essencial quanto se está em uma equipe...
sim sim, mais o foco desse tutorial foi a identação...kabecao escreveu:Importante tambem é sempre comentar o codigo
Fudêncioo- Data de inscrição : 18/07/2008
Reputação : 0
Número de Mensagens : 5
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Identação - Para que serve e como usar
é eu axo que fika bem melhor usa essa coisa sim, apesar de que eu nem uso mto... pq os meus codigos tem poucas linhas xD as veses os if tem so 3 linhas so xD!! ai nem presisa tipo, quase nunca uso o else!! XDDD
a maioria é tudo assim:
if to_andando = true && no_chao = true
{
stamina -= 0.5
}
xDD!!! simples nao?
mas as veses quando é coisa pequena tipo esse ai eu fasso assim:
if to_andando = true && no_chao = true
{ stamina -= 0.5 }
a maioria é tudo assim:
if to_andando = true && no_chao = true
{
stamina -= 0.5
}
xDD!!! simples nao?
mas as veses quando é coisa pequena tipo esse ai eu fasso assim:
if to_andando = true && no_chao = true
{ stamina -= 0.5 }
Janx- Data de inscrição : 24/05/2008
Reputação : 14
Número de Mensagens : 2417
Prêmios :
x 0 x 0 x 0
x 0 x 2 x 0
x 0 x 0 x 0
Re: Identação - Para que serve e como usar
eu uso Delphi e C++ a algum tempo e nunca vi um codigo assim.do Delphi e C++ também...
quando eu falo que parece o padrão de flash é quando vc coloca o editor de codigo sem ser no modo avançado.
tomara que todos os iniciantes leiam isso.
porque isso é essencial a todos que programam.
parabens pela iniciativa!
flw!
Re: Identação - Para que serve e como usar
hAIEUhAEuiahekabecao escreveu:eu uso Delphi e C++ a algum tempo e nunca vi um codigo assim.
me desculpe, escrevi delphi pq tava com ele aberto na hora q eu respondi
HAIEHAIEUhAUIEHAUEIH
mais no C++ tem sim
- Código:
if (condição) código;
OU
if (condição) {
código;
código;
código;
código;
}
Fudêncioo- Data de inscrição : 18/07/2008
Reputação : 0
Número de Mensagens : 5
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Identação - Para que serve e como usar
4 anos desde o último comentário... bom, vi um link pra cá, gostei do tópico e resolvi mostrar o que eu uso pra identar meus códigos.
- uma linha pra fechar cada colchete
- colchetes se fecham na mesma tabulação do código dentro deles
- else dentro do if, como se fosse parte dele (o que tem um fundo de verdade)
- espaço em todas as operações (é que eu uso o notepad++ e os highlights só funcionam se você deixar claro que terminou uma coisa e começou outra)
- linhas em branco pra separar grupos de códigos no mesmo evento/script
- comentários antes de um grupo de códigos ou no final da declaração de variável
Então, se eu estou criando uma sprite via código, por exemplo, eu faço algo do tipo:
Uma coisa que eu tenho dificuldade é em copiar um código do notepad++ pra dentro do GM, parece que as tabulações são transformadas em espaços, o que avacalha um pouco. Mas depois que eu descobri como tabular grupos de linhas (ctrl + i), esse problema diminuiu bastante.
Uma coisa que sinto falta ao programar dentro do GM é a quebra de linha! Ela pode confundir alguém que não esteja familiarizado com o código, mas procurar um bug arrastando a barrinha da janela é uma tristeza!
- uma linha pra fechar cada colchete
- colchetes se fecham na mesma tabulação do código dentro deles
- else dentro do if, como se fosse parte dele (o que tem um fundo de verdade)
- espaço em todas as operações (é que eu uso o notepad++ e os highlights só funcionam se você deixar claro que terminou uma coisa e começou outra)
- linhas em branco pra separar grupos de códigos no mesmo evento/script
- comentários antes de um grupo de códigos ou no final da declaração de variável
Então, se eu estou criando uma sprite via código, por exemplo, eu faço algo do tipo:
- Código:
//preparativos
var lar, alt, Surf, Sprite;
lar = argument0; alt = argument1; //largura e altura da sprite
Surf = surface_create(lar, alt); //cria a surface
surface_set_target(Surf); //passa a desenhar na surface
draw_clear_alpha(0, 0); //limpa a lousa pra obra de arte
//desenho
if (formato == "bolinha"){
draw_circle(lar / 2, alt / 2, min(lar, alt) / 2, 0);
}
else { //se não é bolinha, então é retângulo
draw_rectangle(0, 0, lar, alt, 0);
}
//cria a sprite
Sprite = sprite_create_from_surface(Surf, 0, 0, lar, alt, 0, 0, lar / 2, alt / 2);
//limpa a bagunça
surface_reset_target(); //volta a desenhar no jogo, e não na tela
surface_free(Surf); //some com a tela, liberando memória
//retorna a sprite
return(Sprite);
Uma coisa que eu tenho dificuldade é em copiar um código do notepad++ pra dentro do GM, parece que as tabulações são transformadas em espaços, o que avacalha um pouco. Mas depois que eu descobri como tabular grupos de linhas (ctrl + i), esse problema diminuiu bastante.
Uma coisa que sinto falta ao programar dentro do GM é a quebra de linha! Ela pode confundir alguém que não esteja familiarizado com o código, mas procurar um bug arrastando a barrinha da janela é uma tristeza!
saim- Games Ranking :
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios :
x 1 x 6 x 0
x 1 x 0 x 3
x 0 x 0 x 0
Tópicos semelhantes
» Identacao nos codigos
» floor....pra que q serve?
» Para que serve a constante pi
» Para que serve esses CMD?
» Para que serve a função instance_nearest?
» floor....pra que q serve?
» Para que serve a constante pi
» Para que serve esses CMD?
» Para que serve a função instance_nearest?
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos