Prévia do material em texto
WBA0895_v1.0 Projeto de jogos 2D: game art e programação WBA0895_v1_VA_V1_24 Programação estruturada e orientada a objetos Programação estruturada e programação orientada a objetos Bloco 1 Rafael Hungaro Cabral Vamos refletir? Você sabia que os paradigmas da programação influenciam na construção de um game 2D? Programação estruturada • O que é paradigma da programação? • Padrão adotado na programação. • Hierarquia de módulos. • Código linear. • Organização do código em procedimentos ou funções. • Podem ser reutilizadas. • O código é executado linha por linha. Programação estruturada • Exemplo: imagine uma fábrica na qual cada trabalhador (função) tem uma tarefa específica para fazer, como montar peças ou verificar a qualidade. Programação orientada a objetos • Baseada em objetos, que são instâncias de classes. • Cada objeto pode conter seu próprios dados (atributos) e métodos (funções) para operar estes dados. • Encapsulamento. • Herança. • Polimorfismo. • Abstração. Programação orientada a objetos • Exemplo: pense em um carro. Um carro é um objeto que tem atributos (cor, marca, modelo) e métodos (acelerar, frear). Paradigmas • Vamos ver na prática exemplos de códigos utilizando a programação estruturada e orientada a objetos. Programação estruturada e orientada a objetos Programação de jogos 2D Bloco 2 Rafael Hungaro Cabral Desenvolvendo um jogo simples usando programação estruturada • Vamos ver na prática como construir um game simples utilizando a programação estruturada. Programação estruturada e orientada a objetos Programação de jogos 2D Bloco 3 Rafael Hungaro Cabral Construindo um game simples utilizando a programação orientada a objetos (POO) • Vamos ver na prática como construir um game simples utilizando a programação orientada a objetos (POO). Teoria em prática Programação estruturada e orientada a objetos Bloco 4 Rafael Hungaro Cabral Reflita sobre a seguinte situação Você foi contratado para refatorar um jogo que foi codificado de forma estruturada. Como você abordaria este projeto utilizando técnicas de programação orientada a objetos para melhorar a manutenção, extensibilidade e organização do código? Norte para a resolução Vamos ver na prática como seria essa refatoração de código. Consolidando o aprendizado Programação estruturada e orientada a objetos Bloco 5 Rafael Hungaro Cabral Consolidando o aprendizado • Paradigmas da programação. • Programação estruturada. • Programação orientada a objetos. • Encapsulamento. • Herança. • Polimorfismo. • Abstração. Quiz Diante de um projeto de jogo 2D, quais situações você acredita que justificariam o uso de herança em vez de composição? Quiz – Resolução A herança é útil quando há uma relação "é um" entre classes (por exemplo, um inimigo que herda de personagem), enquanto a composição é preferível quando se deseja combinar funcionalidades sem criar uma dependência rígida entre classes (por exemplo, um personagem que "tem" uma arma). Leitura Fundamental Prezado estudante, as indicações a seguir podem estar disponíveis em algum dos parceiros da nossa Biblioteca Virtual (faça o login por meio do seu AVA), e outras podem estar disponíveis em sites acadêmicos (como o SciELO), repositórios de instituições públicas, órgãos públicos, anais de eventos científicos ou periódicos científicos, todos acessíveis pela internet. Isso não significa que o protagonismo da sua jornada de autodesenvolvimento deva mudar de foco. Reconhecemos que você é a autoridade máxima da sua própria vida e deve, portanto, assumir uma postura autônoma nos estudos e na construção da sua carreira profissional. Por isso, nós o convidamos a explorar todas as possibilidades da nossa Biblioteca Virtual e além! Sucesso! Indicação de leitura 1 Este livro aborda os principais conceitos relacionados à programação orientada a objetos. Referência OBERLEITNER, Allen; MASIERO, Andrey Araujo. Programação orientada a objetos. São Paulo: Senac, 2021. Indicação de leitura 2 Esse artigo apresenta o GameProg, uma abordagem para apoiar o ensino e aprendizagem de programação de maneira lúdica e interativa usando como recurso o desenvolvimento de jogos. A sua implementação foi pautada no uso da linguagem C, a partir do CodeBlocks e apoiado pela biblioteca SFML. O objetivo do GameProg é adotar estratégias inovadoras para aumentar o interesse e a motivação do aluno, bem como reduzir a evasão dos cursos de Ciência da Computação e áreas afins. Foi apresentada aos alunos uma primeira versão do GameProg e a avaliação desta versão foi feita por meio de um questionário. A análise das respostas indicou que a abordagem motivou os alunos com relação ao estudo de programação. Referência STEPHAN, João; OLIVEIRA, Alessandreia; RENHE, Marcelo Caniato. O uso de jogos para apoiar o ensino e aprendizagem de programação. In: Simpósio Brasileiro de Informática na Educação, 31., Anais... SBC, p. 381-390, 2020. Referências AGUILAR, L. J. Fundamentos de programação: algoritmos, estruturas de dados e objetos. Porto Alegre: AMGH, 2008 KOFFMAN, E. B.; WOLFGANG, P. T. Objetos, abstração, estrutura de dados e projeto usando C++. Rio de Janeiro: LTC, 2012. NOLLE, T. Structured programming (modular programming). Tech Target, 2020. Disponível em: https://searchsoftwarequality.techtarget.com/definition/structured programming-modular-programming. Acesso em: 01 ago. 2024. OBERLEITNER, Allen; MASIERO, Andrey Araujo. Programação orientada a objetos. São Paulo: Senac, 2021. STEPHAN, João; OLIVEIRA, Alessandreia; RENHE, Marcelo Caniato. O uso de jogos para apoiar o ensino e aprendizagem de programação. In: Simpósio Brasileiro de Informática na Educação, 31., Anais... SBC, p. 381-390, 2020. Bons estudos! Slide 1: Projeto de jogos 2D: game art e programação Slide 2: Programação estruturada e orientada a objetos Slide 3 Slide 4: Programação estruturada Slide 5: Programação estruturada Slide 6: Programação orientada a objetos Slide 7: Programação orientada a objetos Slide 8: Paradigmas Slide 9: Programação estruturada e orientada a objetos Slide 10: Desenvolvendo um jogo simples usando programação estruturada Slide 11: Programação estruturada e orientada a objetos Slide 12: Construindo um game simples utilizando a programação orientada a objetos (POO) Slide 13: Programação estruturada e orientada a objetos Slide 14 Slide 15 Slide 16: Programação estruturada e orientada a objetos Slide 17 Slide 18 Slide 19 Slide 20 Slide 21: Indicação de leitura 1 Slide 22: Indicação de leitura 2 Slide 23 Slide 24: Bons estudos!