Conectar-se
Quem está conectado
13 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 13 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 13/01/2011
Número de Mensagens : 111
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

[Resolvido] É mesmo necessario o "ponto e virgula"??

em Qui 26 Jun 2014, 00:30
entao galera, eu percebi que aparentemente eh necessario, mas eu nao uso e nao vejo problema ou diferença, de vez em quando coloco soh pra ficar mais atraente, mas nao sei ao certo se devo usa-lo ou nao, entao se alguem souber me ajudar...
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 24/04/2013
Número de Mensagens : 354
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 40

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [Resolvido] É mesmo necessario o "ponto e virgula"??

em Qui 26 Jun 2014, 00:55
nâo,nunca vi diferença,pelo que eu saiba so se usa ; em codigos que tenha Switch.
avatar
Ranking : Nota A
Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Número de Mensagens : 1846
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 254

Prêmios
   : 2
   : 1
   : 1
Ver perfil do usuáriohttp://willy-gmbr.blogspot.com/

Re: [Resolvido] É mesmo necessario o "ponto e virgula"??

em Qui 26 Jun 2014, 01:19
O interessante do Game Maker, é que a sintaxe dele foi escrita baseada em uma grande quantidade de linguagens diferentes, justamente para que os que já tenham alguma linguagem de programação no currículo se adaptem facilmente com a sintaxe do GML. Em Java por exemplo, o uso do ; é obrigatório, e se for esquecido, gera um erro. Também existem outras linguagens que dispensam o uso. Além do ponto e vírgula, temos outras coisas opcionais, como por exemplo, o "then".

Conclusão: Não é obrigatório.
avatar
Ranking : Sem avaliações
Data de inscrição : 23/05/2012
Número de Mensagens : 515
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 36

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://www.wibix.webs.com

Re: [Resolvido] É mesmo necessario o "ponto e virgula"??

em Qui 26 Jun 2014, 09:30
Não, mas ajuda na própria organização do códigos, por exemplo
Código:
_Variavel = 1000+500; inst = insace_create();
O ponto e virgula chama mais a atenção de quem esta programando...
avatar
Ranking : Nota C
Notas recebidas : B+C
Data de inscrição : 15/05/2012
Número de Mensagens : 666
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 49

Prêmios
   : 1
   : 0
   : 0
Ver perfil do usuário

Re: [Resolvido] É mesmo necessario o "ponto e virgula"??

em Qui 26 Jun 2014, 10:23
As liguagem C, C++ e Java utilizam ele, então é bom vc ter de costume o uso do ponto e virgula, quem sabe num futuro vc programe nessas liguagens.
avatar
Ranking : Sem avaliações
Data de inscrição : 11/10/2009
Número de Mensagens : 2184
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 106

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [Resolvido] É mesmo necessario o "ponto e virgula"??

em Qui 26 Jun 2014, 16:29
Chamar atenção? Hmm... nope. Em linguagens como C/C++ e Java, o ponto e vírgula é usado para determinar que a declaração/chamada de função/whatever acaba ali. Porque diferente de linguagens como Python, por exemplo, onde blocos de código são diferenciados por tabulações e linhas (e não por chaves), esse recurso permite que você formate a declaração da forma que você mais achar conveniente. (e também ajuda nas rotinas de otimização do compilador, etc e tal)

GML segue a mesma coisa de Python (em relação a ponto-vírgula, fora isso é bem diferente): o uso não é obrigatório, mas, pode ser usado para executar mais de uma declaração na mesma linha. Exemplos:
Código:
var foo; foo = 2; // ATENÇÃO: O ponto e vírgula na declaração var é OBRIGATÓRIO, faz parte do design da GML. (e tem isso em Pascal tbm)
a = c; b = c
matar_player(); recolher_cadaver();

E também as outros recursos herdadas de Pascal (a linguagem que o GM foi feita inicialmente, acho que ainda fazem nela):
Código:
if (x < 40) then x = 40  // Condições com apenas uma linha
// Uso de begin e end no lugar de chaves
if (equacao_complicadissima) begin
   // Funções mais complicadas ainda
end;
// Declaração com := (dois pontos + igual)
// Em Pascal se faz condições com "=", e declarações com ":=". GML permite que "=" seja usado para os dois propósitos,
// mas prefira o bom e velho "==" que possui unicamente a função de comparar valores.
variavel_legal := "maneiro!"

Detalhe que em Pascal, o ponto-vírgula é obrigatório. Acho que por GML ser uma linguagem de scripting, ela tenha essa característica de ser opcional, mas nah... é nada mais e nada menos que o design da linguagem. Eu mexo mais com Python, mas de vez em quando dou uma mexidinha com C++ e por ponto-vírgula em tudo se torna um hábito, hehe Razz
Abraços o/
avatar
Ranking : Nota B
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Número de Mensagens : 1281
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 73

Prêmios
   : 3
   : 1
   : 3
Ver perfil do usuário

Re: [Resolvido] É mesmo necessario o "ponto e virgula"??

em Qui 26 Jun 2014, 17:47
GML = linguagem super evoluída. Eu me pergunto porque as outras não são assim.

MAS eu sei de um erro.

Se tem uma variável e logo na próxima linha tem algum parentes pode dar erro.

Ex.:
variavel=variavel2
(objeto).direction=5

Deve-se usar ;
ex.:
variavel=variavel2;
(objeto).direction=5

Eu sou usuário compulsivo de ponto e virgula e de parêntese no if.
avatar
Data de inscrição : 13/01/2011
Número de Mensagens : 111
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [Resolvido] É mesmo necessario o "ponto e virgula"??

em Sex 27 Jun 2014, 00:52
vlw ae galera duvida esclarecida
avatar
Ranking : Nota A
Notas recebidas : A-C-B-A
Data de inscrição : 05/10/2010
Número de Mensagens : 383
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 57

Prêmios
   : 0
   : 1
   : 2
Ver perfil do usuário

Re: [Resolvido] É mesmo necessario o "ponto e virgula"??

em Sex 27 Jun 2014, 07:20
Só aproveitando para concluir aqui, já faz um tempo que fiz um tutorial de "boas práticas" no GM, e em uma dessas dicas eu falo sobre a organização do GML. Para quem se interessar: http://gmbr.forumeiros.com/t27785-tutorial-como-organizar-seu-projeto

Pelo bem do seu código, use o ponto-e-vírgula. Não é obrigatório, mas vai dar menos dor de cabeça para ser entendido por você ou por mais alguém a quem você pode querer mostrar depois. Aliás, uma coisa: só porque não é obrigatório, não significa que você deveria evitá-lo. Smile

o/
avatar
Data de inscrição : 17/06/2014
Número de Mensagens : 206
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 34

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [Resolvido] É mesmo necessario o "ponto e virgula"??

em Sex 27 Jun 2014, 08:33
Acho que o ; se usa na variável local de evento, para declarar uma variável, Ex:
Código:
var banana;
E se tu for colocar mais de uma Ex
Código:
var banana, cachorro, gato;
tens que colocar "," (vírgula) e no final o ";" (ponto e vírgula) para declarar a variável
Eu sou principiante mas acho que é assim


Última edição por Markituh em Sex 27 Jun 2014, 09:15, editado 4 vez(es) (Razão : Corrigi umas coisinhas)
avatar
Ranking : Sem avaliações
Data de inscrição : 11/10/2009
Número de Mensagens : 2184
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 106

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [Resolvido] É mesmo necessario o "ponto e virgula"??

em Sex 27 Jun 2014, 09:17
Rodrigo Santiago escreveu:GML = linguagem super evoluída. Eu me pergunto porque as outras não são assim.
[...] Se tem uma variável e logo na próxima linha tem algum parentes pode dar erro.
Hmm... dessa eu não estava ligado. Parando pra pensar faz até sentido, o lexer parece entender como se fosse uma chamada de função, por isso dá erro de sintaxe pois não existe um função nem script com esse nome. Como sempre procuro programar nas boas maneiras de cada linguagem, só me deparo com pérolas como essa quando estou escrevendo código na velocidade da luz e faço uns errinhos, hehe. E parênteses no if é o que há coll2

GML é uma maravilha no contexto em que é aplicada, mas em outras aplicações seria bastante inviável, como em aplicações nativas que, C/C++ com sua tipagem estática te permitem controlar bem os valores que você armazena por aí.

@Mr. Rafael: Esse tutorial.... quem é iniciante no GM veja esse tutorial. Lembro de tê-lo visto um dia desse, gostei bastante da forma como você abordou o tema Happy De fato, só porque não é obrigatório não quer dizer que você tem que ter medo de usar. É que nem aquele incessante debate entre programadores C x programadores Java: quebrar ou não quebrar a linha para a chave? Eis a questão Razz

@Riccardoric: Exatamente, a construção var é herdada da linguagem Pascal, em que assim como unit e type (em Pascal, isso não tem em GML), var é mais uma seção de código do que uma mera declaração como valor = x, daí a necessidade do ";" pra terminar a linha, como mostrei no meu post anterior. Editei seu post pois tinha um "_" depois var Happy O SoMateus é um membro antigo do fórum, creio que ele conheça bem a função, a dúvida mesmo era sobre a necessidade do uso do ponto e vírgula. Mesmo assim, obrigado por interagir com a comunidade! Very Happy

Como a dúvida do rapaz já foi resolvida,
Tópico trancado.
Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6037
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 288

Prêmios
   :
   :
   :
Ver perfil do usuário

Re: [Resolvido] É mesmo necessario o "ponto e virgula"??

em Sex 27 Jun 2014, 09:23
Ao declarar variáveis temporárias, você precisa usá-lo.

var a, b;

Existem outros casos, mas você mesmo descobrirá, porque o Game Maker vai mostrar um erro "Expected symbol..." (ou algo semelhante).

Quando não der erros, você usa se quiser. Mas é uma boa prática. Em JavaScript, que é bem parecida com o GM no estilo, o uso é necessário. Em outras linguagens, como já citaram, acontece o mesmo.
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum