os 4 trabalhos de python

Post on 15-May-2015

2.873 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Palestra apresentada por Andrews Medina e Francisco Souza na primeira edição do Dev in Cachu, no dia 30 de abril de 2011.Mais informações sobre o evento: http://www.devincachu.com.br

TRANSCRIPT

Os 4 trabalhos de

Resolvendo desafios de diferentespropósitos com uma linguagem multipropósito

Python

Andrews Medinaandrewsmedina.com @andrewsmedinaandrewsmedina@gmail.com

Francisco Souzafranciscosouza.com

@franciscosouzafrancisco@franciscosouza.net

Monday, May 2, 2011

Andrews Medina

Francisco Souza

#cobrateam member

moderador @ python-brasil/django-brasil

desenvolvedor @ globo.com

#cobrateam member

moderador @ django-brasil

desenvolvedor @ globo.com

Monday, May 2, 2011

Trabalhos de Python?

Monday, May 2, 2011

Monday, May 2, 2011

Por que só 4?!

Monday, May 2, 2011

Por que só 4?!São 12, mas...

Monday, May 2, 2011

Por que só 4?!São 12, mas...

Monday, May 2, 2011

1. Criar um framework para testes de aceitação em aplicações web

2. Criar uma aplicação para Android

3. Criar uma aplicação web para mapear access points

4. Criar um jogo de batalha naval

Monday, May 2, 2011

1. Criar um framework para testes de aceitação em aplicações web

splinter

>>> from splinter.browser import Browser>>> browser = Browser('webdriver.chrome')>>> browser.visit('http://www.devincachu.com.br') >>> browser.find_link_by_text('Programação').first.click()>>> palestrantes = browser.find_by_css_selector('p.palestrante')>>> assert len(palestrantes) == 12>>> browser.quit()

Monday, May 2, 2011

Teste de que?!

Monday, May 2, 2011

Interfaces web

Monday, May 2, 2011

http://www.flickr.com/photos/zakh/337938459/

Ferramentas

Monday, May 2, 2011

‣ Alfajor‣ Mechanize‣ Selenium‣ twill‣ Windmill‣ zope.testbrowser‣ ...

Monday, May 2, 2011

APIs

browser.open('http://www.google.com.br')assert 'Hello world' in browser.response

browser = mechanize.Browser()response = browser.open('http://www.google.com.br')assert 'Hello world' in response.get_data()

browser = Firefox()browser.get("http://www.google.com.br")assert 'Hello world' in browser.get_page_source()

browser = Browser()browser.open("http://www.google.com.br")assert 'Hello world' in browser.contents

Monday, May 2, 2011

Unificando as APIs

browser = Browser('webdriver.firefox')browser.visit("http://www.google.com.br")assert 'Hello world' in browser.html

Monday, May 2, 2011

Unificando as APIs

browser = Browser('zope.testbrowser')browser.visit("http://www.google.com.br")assert 'Hello world' in browser.html

Monday, May 2, 2011

Unificando as APIs

browser = Browser('alfajor')browser.visit("http://www.google.com.br")assert 'Hello world' in browser.html

Monday, May 2, 2011

API beta

Monday, May 2, 2011

Encapsulando mágicas

Monday, May 2, 2011

browser = Browser('webdriver.firefox')browser.visit("http://devincachu.com.br")element = browser.find_element_by_css('ul.menu li').firstelement.hover()

Monday, May 2, 2011

browser = Browser('webdriver.firefox')browser.visit("http://devincachu.com.br")element = browser.find_element_by_css('ul.menu li').firstelement.hover()

Monday, May 2, 2011

from selenium.webdriver.remote.command import Commandweb_element.execute(Command.HOVER_OVER_ELEMENT)

Monday, May 2, 2011

http://127.0.0.1:$port/session/$sessionId/element/$id/hover

POST

Monday, May 2, 2011

ou ainda...

Monday, May 2, 2011

css_selector = 'ul.menu li:first'with open('js/jquery.js') as jquery_file: jquery = jquery_file.read() webdriver.execute_script(jquery) webdriver.execute_script('$("%s").hover()' % css_selector)

Monday, May 2, 2011

element.hover()

Monday, May 2, 2011

splinter.cobrateam.info

github.com/cobrateam/splinter

“Testando interfaces web com Python” (FISL)

Mais detalhes...

Monday, May 2, 2011

2. Criar uma aplicação para Android

Monday, May 2, 2011

Por que?

Monday, May 2, 2011

Monday, May 2, 2011

Python em dispositivos móveis

Monday, May 2, 2011

Monday, May 2, 2011

Monday, May 2, 2011

Monday, May 2, 2011

Quero programar em Python no iOS e no

Android, pode?

Monday, May 2, 2011

Appcelerator TitaniumMonday, May 2, 2011

SL4AScript Layer for Android

Monday, May 2, 2011

Interface em HTML...

<h1>Sorteio</h1><p> <label for="limit">Número de inscritos</label> <input type="text" name="inscritos" value="200" id="limit"/></p><p> <input type="button" value="Sortear" onclick="raffle();" /></p>

Monday, May 2, 2011

Interface em HTML...

<h1>Sorteio</h1><p> <label for="limit">Número de inscritos</label> <input type="text" name="inscritos" value="200" id="limit"/></p><p> <input type="button" value="Sortear" onclick="raffle();" /></p>

Monday, May 2, 2011

droid. eventWaitFor('raffle')

Monday, May 2, 2011

github.com/cobrateam/android-sorteio

code.google.com/p/android-scripting

Mais detalhes...

Monday, May 2, 2011

3. Criar uma aplicação web para mapear access points

Monday, May 2, 2011

‣ globo.com‣ guardian.uk‣ brasil.gov.br‣ yahoo!‣ apontador

‣ facebook‣ new york times‣ google‣ disqus

Monday, May 2, 2011

‣ Django‣ web2py‣ Pylons‣ Grok‣ TurboGears

‣ Zope‣ Tornado‣ Flask‣ Bottle‣ CherryPy

‣ circuits.web‣ TwistedWeb‣ tipfy‣ pyramid‣ Bobo

bit.ly/python-frameworks

Monday, May 2, 2011

Monday, May 2, 2011

O framework web para perfeccionistas com prazos

“”Monday, May 2, 2011

uma aplicação completa

48 horas

Monday, May 2, 2011

wifimap, uma forma fácil de descobrir se tem um lugar com wifi

por perto...

Monday, May 2, 2011

show me the map...

Monday, May 2, 2011

Monday, May 2, 2011

4. Criar um jogo de batalha naval

Monday, May 2, 2011

Monday, May 2, 2011

Monday, May 2, 2011

Monday, May 2, 2011

um simples simulador de batalha naval feito em um fim de semana...

Monday, May 2, 2011

show me the game...

Monday, May 2, 2011

a aventura continua...

Monday, May 2, 2011

Obrigado!

Andrews Medinaandrewsmedina.com @andrewsmedinaandrewsmedina@gmail.com

Francisco Souzafranciscosouza.com

@franciscosouzafrancisco@franciscosouza.net

cobrateam.infogithub.com/cobrateam

Monday, May 2, 2011

top related