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
» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Retorno da GMBR!!!
por vinians Qui 14 Mar 2024, 19:07

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Mudar cor de apenas uma palavra
por lunalol Sex 01 Mar 2024, 13:42

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39

» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16

» a funçao approach ainda existe?
por PEDRINDEV Ter 26 Dez 2023, 20:05

» Inimigo ataca até por trás! >:(
por saim Sex 22 Dez 2023, 08:55

» [RESOLVIDO]Spawn após morte
por Deception_1999 Dom 17 Dez 2023, 16:39

» Remunerado $$$ - Procuro programador para ajudar a "montar" um jogo
por theguitarmester Sáb 02 Dez 2023, 16:28

» Game maker nao abre
por Cerf Dom 26 Nov 2023, 12:01


[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 : 2207
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 : 2207
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