Desenvolvimento de Jogos em Python. Por Marcelo de Freitas Rigon

Tamanho: px
Começar a partir da página:

Download "Desenvolvimento de Jogos em Python. Por Marcelo de Freitas Rigon"

Transcrição

1 Desenvolvimento de Jogos em Python Por Marcelo de Freitas Rigon

2 Características de um jogo Pessoas de áreas diferentes Arte Design Desenvolvimento Comercial Não atende a necessidades, é um lazer Projetos com tempo de desenvolvimento alto e equipes grandes

3 Partes do jogo Sobre a programação envolvida em jogos, existem quatro áreas principais e distintas da engine: Inteligência Artificial: É responsável por toda e qualquer forma de atitude diferenciada de algum NPC (personagem que não é do jogador, ou Non-Player Character), de forma a tentar demonstrar a existência de inteligência nestes seres. Gráfico: Tudo o que o jogador vê no jogo é feito por essa parte da engine. Som: Tudo aquilo que o jogador ouve. Input: Toda forma de interface entre o usuário e o jogo é lidada por essa parte da engine. Mesmo em um massive, as informações que chegam via rede, dos outros jogadores, são uma forma de input.

4 Linguagem Usar linguagem compilada e ganhar performance? Usar linguagem interpretada e ganhar tempo de desenvolvimento? Escrever tudo do zero, otimizando o desempenho pro meu jogo? Usar uma engine pronta?

5 Linguagens de script O que é? Linguagem de script é uma linguagem auxiliar, que contém dados que podem ser modificados por uma equipe diferente sem mexer em seu código. Porque utilizar? Devido a toda evolução computacional que tivemos, há várias partes do programa que não precisam ser muito otimizados. E, como tempo é dinheiro, economizar tempo de programação é o que mais importa. Simplicidade Consumo de recursos Agilidade Tempo de desenvolvimento Tempo de compilação Tempo de aprendizado

6

7 Opções de linguagem Quais são as opções? Existem várias linguagens de script que poderiam ser utilizadas. Entre elas, as mais famosas na área de jogos são Lua¹, desenvolvida pela PUC-Rio, e Python², desenvolvida por Guido van Rossum. Nas duas é fácil criar uma extensão em C/C++ ou serem imbuídas em programas em C/C++. Além disso, as duas apresentam facilidades para implementação de inteligência artificial. Afinal, porque Python? A escolha entre estas duas linguagens é tão pessoal quanto a escolha entre utilizar OpenGL ou DirectX. Utilizamos Python por que tem uma documentação mais vasta, uma comunidade maior e, por isso, várias ferramentas que podem facilitar a vida dos programadores. Entre estas ferramentas importantes, temos: pyopengl (que além de ser um binding do OpenGL para python, já tem classes para lidar com quaternions), Numeric ou numpy (pacote com ferramentas matemáticas) e pyopenal (binding do OpenAL para python). [1] [2]

8 Exemplos de linguagens Imprimindo a frase Hello World em quatro linguagens diferentes: Programa em C #include <stdio.h> main() { printf("hello World!"); } Programa em Java class myhelloworld { public static void main(string args[]) { System.out.println("Hello World!"); } } Programa em Python print Hello World! Programa em Lua write( Hello World\n )

9 Projetos em Python Veremos a seguir, alguns projetos que utilizam Python em seu desenvolvimento.

10

11

12 Ferramentas, jogos e cinema Engines: Panda 3D, Crystal space e Ogre. Ferramentas de modelagem: Blender 3D e Maya. Jogos: Eve Online, Piratas do Caribe, PlaneShift, Civilization IV, etc. Cinema: Big Buck Bunny, Avatar: The last air beinder, Transformers, Iron Man, Avatar, etc. Outros: NASA, Yahoo Groups, Yahoo Maps, Red Hat, IBM, ABN AMRO Bank Treasure System, Google, Nokia, Disney, etc.

13 Citações Industrial Light & Magic ILM uses Python in the production of their FX, as described in the RenderMan Course Notes from Siggraph 2001 (they name "The Phantom Menace", "The Mummy Returns" and other productions as ones where Python was used...). Walt Disney Feature Animation Walt Disney Feature Animation is also using Python to add scriptability to their animation production system. The Temple of Elemental Evil and Vampire: The Masquerade: Bloodlines "Greyhawk: The Temple of Elemental Evil" and "Vampire: The Masquerade: Bloodlines" use Python extensively for pretty much everything except the rendering engines - game logic, interface, etc. Both games have strong modding communities.

14 Exemplo import os import Image colorkey = (255,255,255,255) files = os.listdir(".") for file in files: if (file[-2:]!= "py"): new_filename = file[:-4] img = Image.open(file) img = img.convert("rgba") for i in range(img.size[0]): for j in range(img.size[1]): if (img.getpixel((i,j)) == colorkey): img.setpixel((i,j), (255,255,255,0)) img.save(new_filename+".tga") del img

15 Máquina de Estados def onlocate(self,enemy): if (game.distance(self,enemy) < 30): self.setattack(const.att_melee) else: if (enemy.type == const.melee): self.setattack(const.att_missile) self.setmove(const.move_back) if (enemy.type == const.ranged): self.setmove(const.move_back)

16 Máquina de Estados self.combo.add_combo([],attack_1,"att1") self.combo.add_combo([],attack_2,"att2") self.combo.add_combo([],special,"special") self.combo.add_combo([attack_1],attack_2,"att2",stun_time = 3.0) self.combo.add_combo([],action_jump+attack_1,"att1") self.combo.add_combo([],action_jump+attack_2,"att2") self.combo.add_combo([],move_run+attack_1,"att1", controller = scripts.basicrunattack(animation = "att1")) self.combo.add_combo([],move_run+attack_2,"att1", controller = scripts.basicrunattack(animation = "att1"))

17 Muito obrigado!

OOP - Java. Artur Duque Rossi Mestrado em Modelagem Computacional Universidade Federal de Juiz de Fora

OOP - Java. Artur Duque Rossi Mestrado em Modelagem Computacional Universidade Federal de Juiz de Fora OOP - Java Artur Duque Rossi Mestrado em Modelagem Computacional Universidade Federal de Juiz de Fora 1 Sumário Java Aviso! História do Java Programação Orientada à Objetos Os quatro pilares da OOP Abstração

Leia mais

Fundamentos de programação em Python. Introdução a Linguagem Python. Dino Magri

Fundamentos de programação em Python. Introdução a Linguagem Python. Dino Magri Fundamentos de programação em Python Introdução a Linguagem Python Dino Magri Agenda História Instalação Mão na massa 2 História Guido van Rossum Universidade de Amsterdã - 1982 2005-2012 Google 2013 Dropbox

Leia mais

Artur Petean Bove Júnior Tecnologia SJC

Artur Petean Bove Júnior Tecnologia SJC Artur Petean Bove Júnior Tecnologia SJC Objetivo O objetivo do projeto é especificar o desenvolvimento de um software livre com a finalidade de automatizar a criação de WEBSITES através do armazenamento

Leia mais

Programação online em Java

Programação online em Java Universidade Federal do ABC Disciplina: Processamento da Informação Assunto: Programação online em Java Programação online em Java Conteúdo Conteúdo...1 Introdução... 1 1.1.Programas necessários... 1 1.2.Visão

Leia mais

Linguagens de Programação. Linguagens de Script. Carlos Bazilio bazilio@ic.uff.br http://www.ic.uff.br/~bazilio/cursos/lp

Linguagens de Programação. Linguagens de Script. Carlos Bazilio bazilio@ic.uff.br http://www.ic.uff.br/~bazilio/cursos/lp Linguagens de Programação Linguagens de Script Carlos Bazilio bazilio@ic.uff.br http://www.ic.uff.br/~bazilio/cursos/lp Motivação Linguagens de programação, usualmente, são projetadas para criação de aplicações

Leia mais

Professor: Douglas Sousa Cursos de Computação

Professor: Douglas Sousa Cursos de Computação Linguagem de Programação C# Professor: Douglas Sousa Cursos de Computação Agenda Conceitos Básicos; Principais Características; Visual Studio; Meu Primeiro Programa; A Linguagem C#; Sistemas de Tipos;

Leia mais

MC-102 Aula 01. Instituto de Computação Unicamp

MC-102 Aula 01. Instituto de Computação Unicamp MC-102 Aula 01 Introdução à Programação de Computadores Instituto de Computação Unicamp 2015 Roteiro 1 Por que aprender a programar? 2 Hardware e Software 3 Organização de um ambiente computacional 4 Algoritmos

Leia mais

Processamento da Informação Teoria. Algoritmos e Tipos de dados

Processamento da Informação Teoria. Algoritmos e Tipos de dados Processamento da Informação Teoria Algoritmos e Tipos de dados Semana 01 Prof. Jesús P. Mena-Chalco 24/04/2013 (*) Slides adaptados das aulas do Prof. Harlen Costa Batagelo Algumas definições de algoritmo

Leia mais

Tutorial Eclipse (IDE)

Tutorial Eclipse (IDE) www.dejavuxteam.wordpress.com Tutorial Eclipse (IDE) (Start) Sumário Introdução O que é o Eclipse? Característica e Ferramentas Download Preparando Ambiente de Trabalho Iniciando o Eclipse Criando um Projeto

Leia mais

CURSO DE PROGRAMAÇÃO EM JAVA

CURSO DE PROGRAMAÇÃO EM JAVA CURSO DE PROGRAMAÇÃO EM JAVA Introdução para Iniciantes Prof. M.Sc. Daniel Calife Índice 1 - A programação e a Linguagem Java. 1.1 1.2 1.3 1.4 Linguagens de Programação Java JDK IDE 2 - Criando o primeiro

Leia mais

Professor: Ronilson Morais Lobo. Salvador / 2015

Professor: Ronilson Morais Lobo. Salvador / 2015 Professor: Ronilson Morais Lobo Salvador / 2015 Introdução Motivação: Criar uma metodologia, Protótipar cenários reais, Proporcionar jogos divertidos, intuitivos e colaborativos. Tecnologia, Conceitos

Leia mais

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza. josineys@inf.ufpr.br

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza. josineys@inf.ufpr.br Fundamentos de Programação Turma CI-240-EST Josiney de Souza josineys@inf.ufpr.br Agenda do Dia Aula 2 (07/08/15) Introdução ao Python História Características Estrutura dos código-fonte Primeiros elementos

Leia mais

Bruno Pereira Evangelista. www.brunoevangelista.com

Bruno Pereira Evangelista. www.brunoevangelista.com Bruno Pereira Evangelista www.brunoevangelista.com 2 Introdução Shaders Pipeline de Renderização Evolução dos Shaders Como Programar Shaders Programando Shaders com XNA Ferramentas Conclusões 3 Durante

Leia mais

Algoritmos e programação

Algoritmos e programação Algoritmos e programação Introdução à Programação Prof. Bonadia dos Santos Conceitos básicos Desde o início de sua existência, o homem procurou criar máquinas que o auxiliassem em seu trabalho. Dentre

Leia mais

Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java

Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java Linguagem Java Objetivos Compreender como desenvolver algoritmos básicos em JAVA Aprender como escrever programas na Linguagem JAVA baseando-se na Linguagem Portugol aprender as sintaxes equivalentes entre

Leia mais

Para criar uma animação precisamos de uma imagem e que ela contenha alguns frames. O número de frames é uma escolha sua.

Para criar uma animação precisamos de uma imagem e que ela contenha alguns frames. O número de frames é uma escolha sua. 7 Animação Animações é um dos quesitos muito importantes em jogos, você não acha? Para isso o JPlay tem uma classe específica para lidar com animações. Essa classe se chama Animation. Bem sugestivo o nome

Leia mais

Objetivos do mini curso. Conhecer a linguagem. Noção de programação utilizando Python. Aprender o báscio.

Objetivos do mini curso. Conhecer a linguagem. Noção de programação utilizando Python. Aprender o báscio. Objetivos do mini curso Conhecer a linguagem. Noção de programação utilizando Python. Aprender o báscio. Conteúdo Uma visão da linguagem: O modo python de programar O interpretador dinâmico Salvando e

Leia mais

Um Ambiente Gráfico para Desenvolvimento de Software de Controle para Robôs Móveis Utilizando Simulação 3D

Um Ambiente Gráfico para Desenvolvimento de Software de Controle para Robôs Móveis Utilizando Simulação 3D Um Ambiente Gráfico para Desenvolvimento de Software de Controle para Robôs Móveis Utilizando Simulação 3D Cardoso Marchezi e Hans-Jorg Andreas Schneebeli VIII Simpósio Brasileiro de Automação Inteligente

Leia mais

LAG. Laboratório de Aplicações Gráficas e Desenvolvimento de Jogos. Professor responsável M. Sc. Will Ricardo dos Santos Machado

LAG. Laboratório de Aplicações Gráficas e Desenvolvimento de Jogos. Professor responsável M. Sc. Will Ricardo dos Santos Machado LAG Laboratório de Aplicações Gráficas e Desenvolvimento de Jogos Professor responsável M. Sc. Will Ricardo dos Santos Machado Linhas de Atuação Computação Gráfica Interação homem-máquina Modelagem Animação

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA Responda 1) Quem desenvolveu a linguagem C? Quando? 2) Existe alguma norma sobre a sintaxe da linguagem C? 3) Quais são os tipos básicos de dados disponíveis na linguagem C? 4) Quais são as principais

Leia mais

Java - Introdução. Professor: Vilson Heck Junior. vilson.junior@ifsc.edu.br

Java - Introdução. Professor: Vilson Heck Junior. vilson.junior@ifsc.edu.br Java - Introdução Professor: Vilson Heck Junior vilson.junior@ifsc.edu.br Agenda O que é Java? Sun / Oracle. IDE - NetBeans. Linguagem Java; Maquina Virtual; Atividade Prática. Identificando Elementos

Leia mais

Programação Orientada a Objetos em Java

Programação Orientada a Objetos em Java Programação Orientada a Objetos em Java Rone Ilídio da Silva Universidade Federal de São João del-rei Campus Alto Paraopeba 1:14 1 Objetivo Apresentar os principais conceitos de Programção Orientada a

Leia mais

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira Algoritmos e Estrutura de Dados Aula 1 Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira Linguagem a ser Utilizada? Nossa disciplina é de Algoritmos e Estrutura de Dados, e não de linguagem

Leia mais

3. O NIVEL DA LINGUAGEM DE MONTAGEM

3. O NIVEL DA LINGUAGEM DE MONTAGEM 3. O NIVEL DA LINGUAGEM DE MONTAGEM Nas aulas anteriores tivemos a oportunidade de discutir dois diferentes níveis presentes na maioria dos computadores atuais. Nesta aula dedica-se a outro nível que também

Leia mais

Introdução a Java. Hélder Nunes

Introdução a Java. Hélder Nunes Introdução a Java Hélder Nunes 2 Exercício de Fixação Os 4 elementos básicos da OO são os objetos, as classes, os atributos e os métodos. A orientação a objetos consiste em considerar os sistemas computacionais

Leia mais

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi 5 Conclusão Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi permitir que scripts Lua instanciem e usem

Leia mais

Noções sobre Objetos e Classes

Noções sobre Objetos e Classes Noções sobre Objetos e Classes Prof. Marcelo Cohen 1. Elementos de programação Revisão de programação variáveis, tipos de dados expressões e operadores cadeias de caracteres escopo de variáveis Revisão

Leia mais

Programação Orientada a Objetos e Java - Introdução. Carlos Lopes

Programação Orientada a Objetos e Java - Introdução. Carlos Lopes Programação Orientada a Objetos e Java - Introdução Carlos Lopes POO e Java Objetivo: proporcionar uma visão dos conceitos de POO e do seu uso na estruturação dos programas em Java. Classes e objetos em

Leia mais

Curso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais

Curso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais Curso de Java Orientação a objetos e a Linguagem JAVA Roteiro A linguagem Java e a máquina virtual Objetos e Classes Encapsulamento, Herança e Polimorfismo Primeiro Exemplo A Linguagem JAVA Principais

Leia mais

Objetivos do Curso. Você será capaz de:

Objetivos do Curso. Você será capaz de: Objetivos do Curso Ao término do curso você entenderá: Aplicativos Java e applets Tipos de dados primitivos Fluxo de Controle em Java Métodos Outros: exceções, multithreading, multimedia, I/O, redes. Objetivos

Leia mais

Ambiente Online de Programação em C. http://www.tutorialspoint.com/compile_c_online.php

Ambiente Online de Programação em C. http://www.tutorialspoint.com/compile_c_online.php Ambiente Online de Programação em C O site tutorialspoint.com oferece um ambiente online para criação de projetos em C, entre outras linguagens de programação. O ambiente para desenvolvimento na linguagem

Leia mais

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br LP II Estrutura de Dados Introdução e Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Considerações Gerais Introdução a Linguagem C Variáveis e C Tipos de

Leia mais

Programação de Computadores e Robocode. http://www.lac.inpe.br/~rafael.santos

Programação de Computadores e Robocode. http://www.lac.inpe.br/~rafael.santos Programação de Computadores e Robocode 1 O que é Programação de Computadores? O que é um programa de computador? Quem escreve estes programas? Como são escritos? O que podemos fazer com estes programas?

Leia mais

Linguagens de. Aula 02. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br

Linguagens de. Aula 02. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação III Aula 02 Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação Técnica de comunicação padronizada para enviar instruções a um computador. Assim

Leia mais

UFRPE Prof. Gustavo Callou gcallou@gmail.com

UFRPE Prof. Gustavo Callou gcallou@gmail.com UFRPE Prof. Gustavo Callou gcallou@gmail.com 1 Algoritmos Representação Exercícios Linguagens de Programação Compilador Interpretador Ambiente de Desenvolvimento Python Característica Para que serve Onde

Leia mais

Carga horária : 4 aulas semanais (laboratório) Professores: Custódio, Daniel, Julio foco: introdução a uma linguagem de programação Linguagem Java

Carga horária : 4 aulas semanais (laboratório) Professores: Custódio, Daniel, Julio foco: introdução a uma linguagem de programação Linguagem Java Carga horária : 4 aulas semanais (laboratório) Professores: Custódio, Daniel, Julio foco: introdução a uma linguagem de programação Linguagem Java 1 Objetivo: O aluno deverá adquirir capacidades e habilidades

Leia mais

Universidade Federal Rural do Rio de Janeiro PET-Sistemas de Informação. Lucas Nunes Paim lucaspaim@pet-si.ufrrj.br

Universidade Federal Rural do Rio de Janeiro PET-Sistemas de Informação. Lucas Nunes Paim lucaspaim@pet-si.ufrrj.br Universidade Federal Rural do Rio de Janeiro PET-Sistemas de Informação Lucas Nunes Paim lucaspaim@pet-si.ufrrj.br Aula 1 1. Introdução O que é Python? Por que usar Python? 2. Instalação 3. Variáveis 4.

Leia mais

Desvendando Jogos 2D. Por Marcos Romero Setembro / 2008. Cyborg Arena - RHGames

Desvendando Jogos 2D. Por Marcos Romero Setembro / 2008. Cyborg Arena - RHGames Desvendando Jogos 2D Por Marcos Romero Setembro / 2008 Cyborg Arena - RHGames Jogos Casuais Paciência Windows XP Paciência deve ser o jogo mais usado no PC. O mercado de jogos casuais tem um grande potencial,

Leia mais

Web Services. Autor: Rômulo Rosa Furtado

Web Services. Autor: Rômulo Rosa Furtado Web Services Autor: Rômulo Rosa Furtado Sumário O que é um Web Service. Qual a finalidade de um Web Service. Como funciona o serviço. Motivação para o uso. Como construir um. Referências. Seção: O que

Leia mais

Implementação de Classe e Auto-Relacionamento em Java

Implementação de Classe e Auto-Relacionamento em Java UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Implementação de Classe e Auto-Relacionamento em Java 1)Introdução Um modelo de Diagrama de Classes representa a estrutura definida

Leia mais

O mercado de games independentes e o perfil do profissional de desenvolvimento. Delimitação

O mercado de games independentes e o perfil do profissional de desenvolvimento. Delimitação SIMCAP Simpósio de Computação Aplicada O mercado do desenvolvimento de SW para games O mercado de games independentes e o perfil do profissional de desenvolvimento. Guarulhos 2012 Arthur Gomes Faria RA

Leia mais

Comandos de repetição For (inicialização; condição de execução; incremento/decremento) { //Código }

Comandos de repetição For (inicialização; condição de execução; incremento/decremento) { //Código } Este documento tem o objetivo de demonstrar os comandos e sintaxes básicas da linguagem Java. 1. Alguns passos para criar programas em Java As primeiras coisas que devem ser abordadas para começar a desenvolver

Leia mais

Fábio Rodrigues Jorge. E-mail: fabinhojorgenet@gmail.com

Fábio Rodrigues Jorge. E-mail: fabinhojorgenet@gmail.com Fábio Rodrigues Jorge E-mail: fabinhojorgenet@gmail.com Este minicurso tem por objetivo apresentar uma noção introdutória á linguagem Python. Temas abordados no minicurso: -variáveis -comandos de decisão

Leia mais

http://aurelio.net/vim/vim-basico.txt Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho

http://aurelio.net/vim/vim-basico.txt Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho vi http://aurelio.net/vim/vim-basico.txt Entrar neste site/arquivo e estudar esse aplicativo Administração de Redes de Computadores Resumo de Serviços em Rede Linux Controlador de Domínio Servidor DNS

Leia mais

ESTRUTURA BÁSICA DE UM PROGRAMA JAVA

ESTRUTURA BÁSICA DE UM PROGRAMA JAVA ESTRUTURA BÁSICA DE UM PROGRAMA JAVA Prof. Angelo Augusto Frozza, M.Sc. // Primeiro programa em Java public class PrimeiroPrograma { public static void main(string [] args) { System.out.println("Programação

Leia mais

Tutorial de instalação do Java 7 no Windows 7.

Tutorial de instalação do Java 7 no Windows 7. Tutorial de instalação do Java 7 no Windows 7. Neste tutorial vamos instalar um ambiente de desenvolvimento Java JDK 7 no Windows 7. Quando falamos em ambiente Java, estamos nos referindo ao conjunto de

Leia mais

Organização de Computadores Software

Organização de Computadores Software Organização de Computadores Software Professor Marcus Vinícius Midena Ramos Colegiado de Engenharia de Computação (74)3614.1936 marcus.ramos@univasf.edu.br www.univasf.edu.br/~marcus.ramos Objetivos: Entender

Leia mais

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática Folha 1-1 Introdução à Linguagem de Programação JAVA 1 Usando o editor do ambiente de desenvolvimento JBUILDER pretende-se construir e executar o programa abaixo. class Primeiro { public static void main(string[]

Leia mais

Configurar o Furbot no Eclipse

Configurar o Furbot no Eclipse Configurar o Furbot no Eclipse Primeiramente, precisamos abrir o Eclipse. Logo no início, deverá aparecer uma tela assim: Nela, você irá selecionar o local do seu workspace. Workspace é o local onde ficarão

Leia mais

Introdução ao C# . Visão geral do.net Framework

Introdução ao C# . Visão geral do.net Framework Introdução ao C# Microsoft.NET (comumente conhecido por.net Framework - em inglês: dotnet) é uma iniciativa da empresa Microsoft, que visa uma plataforma única para desenvolvimento e execução de sistemas

Leia mais

Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread.

Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread. 5 THREADS Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread. 5.1 VISÃO GERAL Uma definição mais abrangente para threads é considerá-lo

Leia mais

Introdução à Linguagem Java

Introdução à Linguagem Java Introdução à Linguagem Java Histórico: Início da década de 90. Pequeno grupo de projetos da Sun Microsystems, denominado Green. Criar uma nova geração de computadores portáveis, capazes de se comunicar

Leia mais

2 Orientação a objetos na prática

2 Orientação a objetos na prática 2 Orientação a objetos na prática Aula 04 Sumário Capítulo 1 Introdução e conceitos básicos 1.4 Orientação a Objetos 1.4.1 Classe 1.4.2 Objetos 1.4.3 Métodos e atributos 1.4.4 Encapsulamento 1.4.5 Métodos

Leia mais

Apresentação da Disciplina de Programação de Computadores I. Vanessa Braganholo vanessa@ic.uff.br

Apresentação da Disciplina de Programação de Computadores I. Vanessa Braganholo vanessa@ic.uff.br Apresentação da Disciplina de Programação de Computadores I Vanessa Braganholo vanessa@ic.uff.br Apresentações } Quem sou eu? } Vanessa Braganholo } http://www.ic.uff.br/~vanessa } Quem são vocês? } Nome?

Leia mais

Python: Módulos. Claudio Esperança

Python: Módulos. Claudio Esperança Python: Módulos Claudio Esperança Módulos Módulos são programas feitos para serem reaproveitados em outros programas Eles tipicamente contêm funções, variáveis, classes e objetos que provêm alguma funcionalidade

Leia mais

DESENVOLVIMENTO DE JOGOS DIGITAIS. Desmistificando o desenvolvimento de games e mercado de trabalho

DESENVOLVIMENTO DE JOGOS DIGITAIS. Desmistificando o desenvolvimento de games e mercado de trabalho DESENVOLVIMENTO DE JOGOS DIGITAIS Desmistificando o desenvolvimento de games e mercado de trabalho 2 Caravieri Modesto Professor de Programação e Banco de Dados I IFSP (SALTO Analise e Desenvolvimento

Leia mais

Curso de Programação Computadores

Curso de Programação Computadores 3 O Primeiro Programa em C Unesp Campus de Guaratinguetá Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro 3 O Primeiro Programa em C 3.1 - Introdução Depois dos conceitos

Leia mais

Introdução à linguagem Python. Slides extras

Introdução à linguagem Python. Slides extras Introdução à linguagem Python Slides extras 1 Linguagem de uso geral Internet: YouTube, Globo.com, Bitly, Mozilla... Computação gráfica: Disney, ILM, AutoDesk... Desktop: Dropbox, BitTorrent, OpenOffice...

Leia mais

Curso de Eng. Informática Linguagens de Programação. C Sharp University Data Processing. (C Sharp Universidade de Processamento de Dados) Docente:

Curso de Eng. Informática Linguagens de Programação. C Sharp University Data Processing. (C Sharp Universidade de Processamento de Dados) Docente: Trabalho elaborado por: Carlos Palma nº5608 Curso de Eng. Informática Linguagens de Programação C Sharp University Data Processing (C Sharp Universidade de Processamento de Dados) Docente: José Jasnau

Leia mais

Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP

Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP 1) Introdução Programação Orientada a Objetos é um paradigma de programação bastante antigo. Entretanto somente nos últimos anos foi aceito realmente

Leia mais

1 INTRODUÇÃO 1.1 CONCEITO DE PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO

1 INTRODUÇÃO 1.1 CONCEITO DE PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO 1 INTRODUÇÃO 1.1 CONCEITO DE PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO Desde o seu surgimento, o manuseio da computação é baseado em linguagens de programação. Ela permite que sejam construídos aplicativos

Leia mais

LEAS ONLINE: PROTÓTIPO DE UM JOGO DE MMORPG

LEAS ONLINE: PROTÓTIPO DE UM JOGO DE MMORPG LEAS ONLINE: PROTÓTIPO DE UM JOGO DE MMORPG Wesllen de Oliveira Delfino, Larissa Pavarini da Luz wesllendelfino@hotmail.com,larissa.luz01@fatec.sp.gov.br Projeto de Iniciação Científica Larissa Pavarini

Leia mais

Exemplo 1. Um programa que cria uma instância de uma classe que herda da classe Frame

Exemplo 1. Um programa que cria uma instância de uma classe que herda da classe Frame 6. Como aplicações gráficas funcionam em Java? Todas as aplicações gráficas em Java usam instâncias de classes existentes, que por serem parte da linguagem podem ser executadas em todas as versões de Java

Leia mais

CONTRATE UM PROFISSIONAL

CONTRATE UM PROFISSIONAL SITE INTELIGENTE Muitas empresas que nos procuram sempre falam que buscam um site transacional e não institucional, mas afinal o que isso quer dizer? Na prática o que a maioria das pessoas espera é que

Leia mais

Planejando o aplicativo

Planejando o aplicativo Um aplicativo do Visual FoxPro geralmente inclui um ou mais bancos de dados, um programa principal que configura o ambiente de sistema do aplicativo, além de uma interface com os usuários composta por

Leia mais

Curso de canvas FazINOVA. www.fazinova.com.br

Curso de canvas FazINOVA. www.fazinova.com.br Curso de canvas FazINOVA O que é um Canvas? Business Model Canvas é uma ferramenta de modelagem de negócios ou projetos: novos, inovadores ou já existentes. Canvas vs. Plano de Negócio Não exclui um plano

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

Java para Desktop. Introdução à Plataforma Java JSE

Java para Desktop. Introdução à Plataforma Java JSE Introdução à Plataforma Java JSE Aécio Costa aeciovc@gmail.com @aeciovc Objetivos Sintaxe Java; Programação Orientada à Objetos; Interfaces Gráficas Swing; JDBC; Gerador de Relatórios IReport; Projeto

Leia mais

Redes Sociais. Engajamento do Cliente Porque devo investir um tempo do meu dia em minhas redes sociais. Redes Sociais 2015.

Redes Sociais. Engajamento do Cliente Porque devo investir um tempo do meu dia em minhas redes sociais. Redes Sociais 2015. Redes Sociais Engajamento do Cliente Porque devo investir um tempo do meu dia em minhas redes sociais. Redes Sociais 2015. REDES SOCIAIS Criar uma presença online é um passo obrigatório para qualquer negócio

Leia mais

Abel J. P. Gomes. Março, 2012

Abel J. P. Gomes. Março, 2012 Tecnologias de Jogos de Vídeo - Projecto Mestrado em Engenharia Informática (10531) 1 ano, 2 semestre Abel J. P. Gomes Março, 2012 1 Objectivos 2 JogAmp 3 Configurar GameProject 4 GameProject Objectivos

Leia mais

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web; CONCEITOS INICIAIS Agenda A diferença entre páginas Web, Home Page e apresentação Web; O que é necessário para se criar páginas para a Web; Navegadores; O que é site, Host, Provedor e Servidor Web; Protocolos.

Leia mais

O modelo do computador

O modelo do computador O modelo do computador Objetivos: Mostrar como é o funcionamento dos computadores modernos Mostrar as limitações a que estamos sujeitos quando programamos Histórico Os primeiros computadores são da década

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 3: Métodos LEEC@IST Java 1/45 Métodos (1) Sintaxe Qualif Tipo Ident ( [ TipoP IdentP [, TipoP IdentP]* ] ) { [ Variável_local Instrução ]* Qualif: qualificador (visibilidade,

Leia mais

Gerenciando Sua Reputação Online Parte 1

Gerenciando Sua Reputação Online Parte 1 Gerenciando Sua Reputação Online Parte 1 Índice Gerenciando Sua Reputação Online Parte 1 Índice O Que é Gerenciamento da Sua Reputação Online? Como Monitorar Sua Reputação Online O Básico Para Construir

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Introdução ao Paradigma OO

Leia mais

Desenvolvimento de uma Biblioteca de Funções para Simulação no Torque Game Engine

Desenvolvimento de uma Biblioteca de Funções para Simulação no Torque Game Engine Desenvolvimento de uma Biblioteca de Funções para Simulação no Torque Game Engine Bruno Baère Pederassi Lomba de Araujo Orientador: Bruno Feijó Dept. de Informática, PUC-Rio PIBIC Programa Institucional

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software O que é a engenharia de software É um conjunto integrado de métodos e ferramentas utilizadas para especificar, projetar, implementar e manter um sistema. Método É uma prescrição

Leia mais

QUITETURA AVANÇADA DE SISTEMAS

QUITETURA AVANÇADA DE SISTEMAS QUITETURA AVANÇADA DE SISTEMAS ICARDO MENDÃO SILVA RMSILVA AT UAL DOT PT MARÇO 2015 AAS OUTLINE INTRODUÇÃO COMENTÁRIOS VARIÁVEIS OPERADORES IF STATEMENT FUNÇÕES CICLO FOR CICLO WHILE STRINGS LISTAS TUPLAS

Leia mais

Parte IX. Luiz Eduardo Borges

Parte IX. Luiz Eduardo Borges Parte IX Luiz Eduardo Borges Sumário (parte VIII) Empacotamento. Integração com Fortran. Integração com linguagem C. Integração com.net. Empacotamento Compilação Empacotamento Fontes (*.py) Bytecode (*.pyc

Leia mais

Aula 2. Objetivos Conceitos; Instalação do Text Pad; Entendendo o código java do AloMundo1 Codificação do AloMundo2,AloMundo3 e AloMundo4.

Aula 2. Objetivos Conceitos; Instalação do Text Pad; Entendendo o código java do AloMundo1 Codificação do AloMundo2,AloMundo3 e AloMundo4. Aula 2 Objetivos Conceitos; Instalação do Text Pad; Entendendo o código java do AloMundo1 Codificação do AloMundo2,AloMundo3 e AloMundo4. Conceitos O software controla os computadores(freqüentemente conhecido

Leia mais

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery Agenda Regras paravariáveis Identificadores Válidos Convenção de Nomenclatura Palavras-chaves em Java Tipos de Variáveis em

Leia mais

RevISTa: Publicação técnico-científica do IST-Rio. nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

RevISTa: Publicação técnico-científica do IST-Rio. nº 05 Data: Dezembro / 2012 ISSN 2178-5589. Tutorial de Instalação e Uso do Eclipse Alexandre V. S. Lage, Caio de O. Leal, Eduardo A. F. da Silva, Felipe C. C. Trindade, Gutierre da C. Oliveira e Miguel G. P. de Carvalho. INTRODUÇÃO O Eclipse (2012)

Leia mais

Parte I. Demoiselle Mail

Parte I. Demoiselle Mail Parte I. Demoiselle Mail Para o envio e recebimento de e-s em aplicativos Java, a solução mais natural é usar a API JavaMail [http:// www.oracle.com/technetwork/java/java/index.html]. Ela provê um framework

Leia mais

Laboratório de Computação VI JAVA IDL. Fabricio Aparecido Breve - 981648-9

Laboratório de Computação VI JAVA IDL. Fabricio Aparecido Breve - 981648-9 Laboratório de Computação VI JAVA IDL Fabricio Aparecido Breve - 981648-9 O que é Java IDL? Java IDL é uma tecnologia para objetos distribuídos, ou seja, objetos em diferentes plataformas interagindo através

Leia mais

LINGUAGEM DE PROGRAMAÇÃO ESTRUTURADA CAPÍTULO 1 APRESENTANDO O C#

LINGUAGEM DE PROGRAMAÇÃO ESTRUTURADA CAPÍTULO 1 APRESENTANDO O C# LINGUAGEM DE PROGRAMAÇÃO ESTRUTURADA CAPÍTULO 1 APRESENTANDO O C# 1.1 - Apresentação Quando fazemos nossas compras em um supermercado, é comum encontrarmos um código de barras impresso nos produtos expostos

Leia mais

Seleção de Livros sobre Desenvolvimento de Jogos. Por Marcos Romero Dezembro / 2008

Seleção de Livros sobre Desenvolvimento de Jogos. Por Marcos Romero Dezembro / 2008 Seleção de Livros sobre Desenvolvimento de Jogos Por Marcos Romero Dezembro / 2008 Categoria: Essencial Desenvolvimento de jogos 3d e aplicações em tempo real Programação de jogos com C++ e Directx Modelagem

Leia mais

Introdução à Computação

Introdução à Computação Aspectos Importantes - Desenvolvimento de Software Motivação A economia de todos países dependem do uso de software. Cada vez mais, o controle dos processos tem sido feito por software. Atualmente, os

Leia mais

Objetivos: Entender o funcionamento dos programas Java via linha de comando

Objetivos: Entender o funcionamento dos programas Java via linha de comando Algoritmos e Programação I Aula de Laboratório Objetivos: Entender o funcionamento dos programas Java via linha de comando 1. A Linha de Comando: DOS ou Shell Apesar dos usuários geralmente não enxergarem

Leia mais

Aula 3 TECNOLOGIA EM JOGOS DIGITAIS PROGRAMACAO E INTEGRACAO DE JOGOS I. Marcelo Henrique dos Santos

Aula 3 TECNOLOGIA EM JOGOS DIGITAIS PROGRAMACAO E INTEGRACAO DE JOGOS I. Marcelo Henrique dos Santos Aula 3 Email: marcelosantos@outlook.com marcellohenrique@outlook.com Twitter: @marcellohsantos Apresentação Comparativa Apresentação Comparativa O QUE É UMA GAME ENGINE? Apresentação Comparativa O QUE

Leia mais

Contil Informática. Curso Técnico em Informática Processadores Core

Contil Informática. Curso Técnico em Informática Processadores Core Contil Informática Curso Técnico em Informática Processadores Core Quais as diferenças entre os processadores Intel Core i3, i5 e i7? A tecnologia avançada na área de hardware possibilita um avanço desenfreado

Leia mais

Como construir um compilador utilizando ferramentas Java

Como construir um compilador utilizando ferramentas Java Como construir um compilador utilizando ferramentas Java p. 1/3 Como construir um compilador utilizando ferramentas Java Aula 5 Análise Léxica com JavaCC Prof. Márcio Delamaro delamaro@icmc.usp.br Como

Leia mais

Conectar o Nokia 6600 a Internet utilizando a conexão do PC (ADSL) pelo Bluetooth sem Proxy

Conectar o Nokia 6600 a Internet utilizando a conexão do PC (ADSL) pelo Bluetooth sem Proxy Conectar o Nokia 6600 a Internet utilizando a conexão do PC (ADSL) pelo Bluetooth sem Proxy Tutorial escrito por: DiG N da Comunidade FOXGSM.net Nesse tutorial você saberá passo a passo a configuração

Leia mais

4 Estrutura do Sistema Operacional. 4.1 - Kernel

4 Estrutura do Sistema Operacional. 4.1 - Kernel 1 4 Estrutura do Sistema Operacional 4.1 - Kernel O kernel é o núcleo do sistema operacional, sendo responsável direto por controlar tudo ao seu redor. Desde os dispositivos usuais, como unidades de disco,

Leia mais

5 Apresentando a linguagem C

5 Apresentando a linguagem C 5 Apresentando a linguagem C O criador da linguagem de programação C foi Dennis Ritchie que, na década de 70, programou-a por meio de um computador DEC PDP-11 rodando sistema operacional Unix. Entretanto,

Leia mais

AMBIENTE DE PROGRAMAÇÃO PYTHON

AMBIENTE DE PROGRAMAÇÃO PYTHON Computadores e Programação Engª Biomédica Departamento de Física Faculdade de Ciências e Tecnologia da Universidade de Coimbra Ano Lectivo 2003/2004 FICHA 1 AMBIENTE DE PROGRAMAÇÃO PYTHON 1.1. Objectivos

Leia mais

LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO. Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto

LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO. Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto Conceitos de Linguagens de Roteiro: Apresentação do plano de ensino; Apresentação do plano de

Leia mais

Introdução a programação em Python Flávio Filipe L. S. Porto

Introdução a programação em Python Flávio Filipe L. S. Porto Introdução a programação em Python Flávio Filipe L. S. Porto O que é Python? Linguagem de programação criada por Guido Van Rossum em 1991 com foco em produtividade e legibilidade. Por quê Python? Fácil

Leia mais

O que veremos nesta aula? Principais Aspectos de Sistemas Operacionais. Visão geral de um sistema computacional

O que veremos nesta aula? Principais Aspectos de Sistemas Operacionais. Visão geral de um sistema computacional O que veremos nesta aula? Principais Aspectos de Sistemas Operacionais Laboratório de Sistemas Operacionais Aula 1 Flávia Maristela (flavia@flaviamaristela.com) Tudo o que já vimos antes... Introdução

Leia mais