GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» player não consegue andar
por 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


[TRFN]Lógica de Programação

2 participantes

Ir para baixo

[TRFN]Lógica de Programação Empty [TRFN]Lógica de Programação

Mensagem por TRFN Dom 03 Fev 2013, 01:02

Sobre o tutorial

Esse tutorial foi desenvolvido por mim na tentativa de ajudar aqueles que não compreendem muito bem a programação e como ela funciona. Espero que gostem do tutorial. Esse tutorial está baseado naquilo que aprendi ao longo do tempo buscando conhecimento. Esse tutorial está mais voltado ao Game Maker , porém decidi escreve-lo de forma que fosse possível abranger para outras formas de programar. Vale lembrar que aqui não estou ensinando comandos para programar , mas sim estou tentando mostrar a essência básica dessa arte.

Conceito Inicial

Na programação , existe um raciocínio , cujo é desenvolvido encima de um sistema pre-definido combinado a um leque de opções que dispõe a você. Existem incontáveis formas de raciocínio lógico , logo , na programação é a mesma coisa , já que cada programador tem sua forma/metodologia para trabalhar. Mas tem uma coisa em comum que todo programador
segue : a lógica de programação. Essa lógica-base é uma forma de pensar , que trabalha segundo sua necessidade. Essa lógica não tem formula mágica que a traduz , mas sim algumas regras para a projeção dela. Vale lembrar que a programação está diretamente ligada a matemática.

Lógica Básica

Em toda linguagem de programação você terá um princípio essencial : estruturas condicionais. Temos por exemplo o IF (SE) que serve para checar uma condição e executar determinada ação. Mas o meu foco não é ensinar sobre cada uma delas , pois já tem tutoriais bem mais explicados sobre cada estrutura , e por isso , vou apenas mostrar a lógica estrutural.

Geralmente você deve pensar em eventos e reações. Como por exemplo :

Estou sem camisa para sair. Comprei uma camisa, vou vestir ela. Se estou vestido com uma
camisa bonita e nova posso ir para festa. Se eu não tiver uma camisa bonita não vou a festa, vou ficar em casa.


Nesta frase aleatória que fiz , eu defini um ponto inicial , defini os acontecimentos e as reações/condições. Observe :

1. Estou sem camisa para sair.
2. Comprei uma camisa , vou vestir ela.
3. Se estou vestido com uma camisa bonita e nova posso ir para festa.
4. Se eu não tiver uma camisa bonita não vou a festa , vou ficar em casa.


Ou seja , esse raciocínio de acontecimentos é a essência de programar. Ai está o macete , pensar em eventos que podem sofrer uma reação ocasionada por uma condição ou acontecimento , as vezes até mesmo como uma reação em cadeia. O resto é apenas variação de funcionalidades... Nada que um breve estudo da linguagem de seu interesse não resolva. Esse exemplo pode ser facilmente transformado em uma estrutura condicional simples (SE) já que tem uma sequencia completa.

1 = Ponto inicial.
2 = Fato que pode ocorrer.
3 = Se esse determinado fato ocorrer , faço isso.
4 = Senão , faço aquilo.


Bom , como já falei um pouco da lógica , vou dar um exemplo de sua aplicação , mostrando de uma forma mais clara :

Código:
DECLARA a; // Ponto inicial.
DEFINE "a" PARA "1"; // Comprei a camisa (exemplo).

SE ("a" FOR IGUAL A "1") {
    vou_na_festa; // Se estou vestido com uma camisa bonita e nova posso ir para festa
    }

SENÃO {
    fico_em_casa; // Se eu não tiver uma camisa bonita não vou a festa , vou ficar em casa.
    }
E essa mesma lógica tem uma forma de realização/aplicação , ou seja , toda condição que faça sentido é possível , como mostra o exemplo acima. Essa aplicação se abrange até mesmo as estruturas condicionais repetitivas (PARA , ENQUANTO , ESCOLHA , etc...). Não há limite condicional , mas vale lembrar que está estrutura formulada por você tem que fazer um sentido , por exemplo você não pode criar uma condição onde você diz e contra-diz ao mesmo tempo o que está analisando, porque senão essa estrutura condicional será inválida.

Comandos

Cada uma das plataformas tem seus comandos específicos , sua organização própria e sua metodologia particular , e logo , cada linguagem tem seus comandos próprios e suas funções próprias nas quais sempre resultam na mesma. Os comandos podem ser considerados referências , para executar ações pre-determinadas. No Game Maker por exemplo temos funções , que servem para executar ações (internas ou externas) ou orientar objetos. O mais importante e que você use esse conjunto de comandos em harmonia com a sua metodológica forma de programar/trabalhar.

Algumas dicas

Quando fores programar , lembre-se sempre que você deve pensar em acontecimentos antes de tudo , porque se não há ação não há analise e consequentemente não há reação. Tudo é feito em uma ordem retilínea. Uma dica é também assimilar algumas palavras em português para inglês ou linguá que sua plataforma de trabalho exige. "Mover" por exemplo é "move" no inglês e escrevendo "move" abre-se uma sequencia de comandos que você pode utilizar dentro do Game Maker por exemplo. Vale lembrar que obter essa "lógica ao programar" não é do dia para noite , depende de cada um , pois cada um tem seu modo de fazer arte.

Outra coisa que é fundamental é que você tenha organização , porque senão você pode se perder dentro do seu próprio raciocínio. Já aconteceu comigo por exemplo.

Não aprofundei muito não , porque minha meta era apenas mostrar a base da programação. Não falei de TRUE ou FALSE , VARS ou CONSTANTS pelo fato de já conter tutoriais bem explicados aqui no fórum , apenas mostrei o trabalho mental que existe por traz desses comandos pre-definidos.

Curiosidades

Você sabia que as estruturas condicionais podem ser transformadas em formulas aritméticas segundo a matemática de bool ? Por exemplo , as estruturas condicionais tem seus conectivos em todo caso , seja ele "=" , "&&" (e) , "||" (ou) , ">" (maior que) , "<" (menor que) , "!" (não). Vou mostrar a formula de cada uma na matemática :

"=" : A - B (se resultar zero , continua);

"&&" : A * B (Se resultar um , continua);

"||" : A + B (Se algum dos valores for um , continua);

">" : A - B (Se resultar positivo , continua);

"<" : A - B (Se resultar negativo , continua);

"!" : A (Se era positivo passa a ser negativo e vice-versa);

Escrito por Túlio Rodrigues de Freitas Nascimento


Até mais ver galera Happy


Última edição por TRFN em Sex 01 Mar 2013, 10:01, editado 17 vez(es)
TRFN
TRFN

Games Ranking : Nota C

Notas recebidas : C + C + C
Data de inscrição : 16/01/2012
Reputação : 70
Número de Mensagens : 1192
Prêmios : [TRFN]Lógica de Programação Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 2

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Web Tecnology
  • Javascript
  • Outros


https://site13.com.br/

Ir para o topo Ir para baixo

[TRFN]Lógica de Programação Empty Re: [TRFN]Lógica de Programação

Mensagem por theguitarmester Dom 03 Fev 2013, 01:25

o Tutorial é bom, porém ele é MUITO curto, mal comecei a ler e já acabei, ele não explica muita coisa, apenas como aplicar a lógica, só que, isso é algo que é relativamente até fácil, não demorei muito a aprender esta lógica, mas do mais, é sempre bom ver um outro ensino similar(via alguns).



---eu queria um Tutorial de Lógica de IA, melhor, se for de Luta, mas um avançado Smile.
theguitarmester
theguitarmester

Games Ranking : Nota C

Notas recebidas : B + C
Data de inscrição : 28/02/2012
Reputação : 139
Número de Mensagens : 2211
Prêmios : [TRFN]Lógica de Programação Empty

Medalhas x 0 Tutoriais x 4 Moedas x 0

Ouro x 2 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1
Plataformas :
  • Unity


http://guitarmester.no.comunidades.net/index.php?pagina=19362978

Ir para o topo Ir para baixo

[TRFN]Lógica de Programação Empty Re: [TRFN]Lógica de Programação

Mensagem por TRFN Dom 03 Fev 2013, 01:32

Complementei ele e obrigado por ler. Esse tutorial é só para dar uma base , porque tem muita gente que não tem e se frusta ao programar. É só para estender o entendimento do assunto para os experientes e alavancar aquele que nunca teve contato ou não tem afinidade com essa questão.



Última edição por TRFN em Dom 03 Fev 2013, 02:04, editado 1 vez(es)
TRFN
TRFN

Games Ranking : Nota C

Notas recebidas : C + C + C
Data de inscrição : 16/01/2012
Reputação : 70
Número de Mensagens : 1192
Prêmios : [TRFN]Lógica de Programação Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 2

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Web Tecnology
  • Javascript
  • Outros


https://site13.com.br/

Ir para o topo Ir para baixo

[TRFN]Lógica de Programação Empty Re: [TRFN]Lógica de Programação

Mensagem por theguitarmester Dom 03 Fev 2013, 01:48

Gostei dessa ultima parte, não havia pensado muito nessa lado de transformar em mátemática os sinais.
theguitarmester
theguitarmester

Games Ranking : Nota C

Notas recebidas : B + C
Data de inscrição : 28/02/2012
Reputação : 139
Número de Mensagens : 2211
Prêmios : [TRFN]Lógica de Programação Empty

Medalhas x 0 Tutoriais x 4 Moedas x 0

Ouro x 2 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1
Plataformas :
  • Unity


http://guitarmester.no.comunidades.net/index.php?pagina=19362978

Ir para o topo Ir para baixo

[TRFN]Lógica de Programação Empty Re: [TRFN]Lógica de Programação

Mensagem por TRFN Sex 01 Mar 2013, 10:01

theguitarmester escreveu:Gostei dessa ultima parte, não havia pensado muito nessa lado de transformar em matemática os sinais.
E por isso que eu acho que a lógica vem antes de saber os comandos. Entender com o que se trabalha e fundamental para qualquer tipo de linguagem de programação. Primeiro a lógica , depois a adaptação.

TRFN
TRFN

Games Ranking : Nota C

Notas recebidas : C + C + C
Data de inscrição : 16/01/2012
Reputação : 70
Número de Mensagens : 1192
Prêmios : [TRFN]Lógica de Programação Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 2

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Web Tecnology
  • Javascript
  • Outros


https://site13.com.br/

Ir para o topo Ir para baixo

[TRFN]Lógica de Programação Empty Re: [TRFN]Lógica de Programação

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos