pydojo

65
Logo do London Python Dojo

Upload: matheus-cardoso

Post on 08-Jul-2015

169 views

Category:

Technology


0 download

DESCRIPTION

Apresentação sobre Python e Dojo para o grupo de Práticas de Software, na UEFS, Bahia.

TRANSCRIPT

Page 1: PyDojo

Logo do London Python Dojo

Page 2: PyDojo
Page 3: PyDojo

Roteiro

O Uma brevíssima história do Python

O Sintaxe

O Tipos, operadores e estruturas de controle

O Funções

O Classes

O Testes

O Dojo

Page 4: PyDojo

Uma brevíssima história do Python

O Guido Van Rossum

O 1989 – um hobby

O Objetivos:

O Fácil e intuitiva

O Open source

O Legível

O Google

O Dropbox

O Monty Python Show

Page 5: PyDojo

O que é Python?

O Multi-propósito (Web, GUI, Scripting, etc.)

O Orientada a objetos

O Interpretada (ou algo próximo disso)

O Linguagem dinâmica e fortemente tipada

O Foco em legibilidade e produtividade

Page 6: PyDojo

Principais características

O Baterias incluídas

O Tudo é objeto

O Shell interativo

O Multi-plataforma

Page 7: PyDojo

Quem usa?

O Nasa – lançamento de foguetes

O Serpro - confecção rápida de portais Web

O Embratel – monitoramento do backbone

Page 8: PyDojo

Releases

O 1.0 – 1994

O 2.0 – 2000

O 3.0 – 2008

O Versão mais usada: 2.7

Page 9: PyDojo

Sintaxe

Page 10: PyDojo

Sintaxe

INDENTAÇÃO É LEVADA A SÉRIO

Page 11: PyDojo

Indentação

Você está fazendo isso errado!

Page 12: PyDojo

Indentação

Você está fazendo isso errado!

Page 13: PyDojo

Indentação

Você está fazendo isso MUITO errado!

Page 14: PyDojo

Indentação

Agora ficou melhor, não?

Page 15: PyDojo

Indentação

#soQueNao

Page 16: PyDojo

Comentários

Page 17: PyDojo

Tipos

Page 18: PyDojo

Strings

Page 19: PyDojo

Números

Page 20: PyDojo

Null

Page 21: PyDojo

Listas

Page 22: PyDojo

Listas

Page 23: PyDojo

Dictionaries

Page 24: PyDojo

Dictionary Methods

Page 25: PyDojo

Boleanos

Page 26: PyDojo

Operadores

Page 27: PyDojo

Aritméticos

Page 28: PyDojo

Aritméticos

Page 29: PyDojo

Lógicos

Page 30: PyDojo

Estruturas de controle

Page 31: PyDojo

Condicionais

Page 32: PyDojo

Funções

Page 33: PyDojo

Funções

Page 34: PyDojo

Argumentos

Page 35: PyDojo

For

Page 36: PyDojo

While

Page 37: PyDojo

Imports

O Re-uso

O Namespaces

Page 38: PyDojo

Imports

Page 39: PyDojo

Classes

Page 40: PyDojo

Declaração

Page 41: PyDojo

Atributos

O Atributos de classe são imutáveis

Page 42: PyDojo

Métodos

Page 43: PyDojo

Instanciação e acesso

Page 44: PyDojo

Herança

Page 45: PyDojo

Testes

Page 46: PyDojo

Testes

O PyUnit (unittest) – nativo

O py.test

O nose

Page 47: PyDojo

Testes

Page 48: PyDojo

Testes

O assertEqual(a, b)

O assertNotEqual(a, b)

O assertIn(a, b)

O assertNotIn(a, b)

O assertFalse(a)

O assertTrue(a)

O assertIsInstance(a, TYPE)

O assertRaises(ERROR, a, args)

Page 49: PyDojo

O Coding Dojo

Page 50: PyDojo

Programadores não treinam

Page 51: PyDojo

Por que treinar?

Page 52: PyDojo
Page 53: PyDojo

TREINAR

REUNIR

DESAFIAR

APRENDER

Page 54: PyDojo

TREINAR

REUNIR

DESAFIAR

APRENDERSE DIVERTIR

Page 55: PyDojo

Não é competição

Page 56: PyDojo

Tão pouco, exibição

Page 57: PyDojo

Aprender junto!

Page 58: PyDojo

Pair Programming

Page 59: PyDojo

Test Driven Development

Page 60: PyDojo
Page 61: PyDojo

Kata

-> Apresentação de uma solução

-> Todos devem conseguir reproduzir

-> Interrupções permitidas para tirar dúvidas

-> Piloto e co-piloto fixos

-> Resolvem antes, apresentam ao vivo

Page 62: PyDojo

Randori

-> Programação em pares

-> Time-boxed”

->Após o turno (5-7 mim.):

O co-piloto vira piloto

O piloto volta para a platéia

Um novo co-piloto é convidado da platéia

->Comentários e críticas somente no verde

silêncio no vermelho

Page 63: PyDojo

Kake

-> Quase Randori

-> Vários pares simultâneos

-> Pessoas trocam entre

máquinas a cada turno

Page 64: PyDojo

Retrospectiva

Page 65: PyDojo

Referências

O Coding Dojo em 5 minutos!

O Apoie Dojo

O Dojo Puzzles

O AgileAndArt