Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Python Porque

Python Porque

Slides da palestra Python Porque no FLisol Blumenau 2017

Andre Machado

April 08, 2017
Tweet

More Decks by Andre Machado

Other Decks in Technology

Transcript

  1. Quem sou eu? Backend Developer na M2Agro; Pythonista e pai

    a 3 anos, mas na área a quase 10; Nerd padrão; De Recife, morando em Blumenau; https://about.me/andresmachado twitter: @andresmachado_
  2. Quem é o Python? • Seu criador foi Guido Van

    Rossum em 1991 • Linguagem dinâmica, interpretada e de tipagem forte • Sim, o nome veio do grupo de humor Monty Python • Foi baseada na linguagem ABC, uma das primeiras a utilizar o conceito de orientação a objetos • Sua implementação principal é em C (CPython), embora existam outras implementações como o PyPy, Jython(Java), IronPython(.NET) e etc...
  3. porque vai além da programação, a comunidade, os desafios, os

    padrões, a visão macro...Python pra mim é mais que apenas programar, é criar oportunidades, diminuir diferenças, incluir e dar opção a outras pessoas. =)
  4. alguns números do python (de acordo com o developer survey

    2017 do stack overflow) https://stackoverflow.com/insights/survey/2017/
  5. É orientado a objetos... class Exemplo(object): def __init__(self, val01, val02):

    self.val1 = val01 self.val2 = val02 def soma(self): return self.val1 + self.val2 >>> ex = Exemplo(10, 20) >>> ex.soma() >>> 30
  6. É procedural e imperativa... >>> valor01 = 10 >>> valor02

    = 20 >>> def soma(a, b): return a + b >>> soma(valor01, valor02) >>> total = 0 >>> for n in range(10): >>> total += n
  7. É funcional e declarativa... First class objects; High order functions

    (@decorators); Compose; Closures; import functools; ---------- >>> total = sum(range(10))
  8. ZEN DO PYTHON… (import this) Bonito é melhor que feio.

    Explícito é melhor que implícito. Simples é melhor que complexo. Complexo é melhor que complicado. Linear é melhor do que aninhado. Esparso é melhor que denso. Legibilidade conta. Casos especiais não são especiais o bastante para quebrar as regras. Ainda que praticidade vença a pureza. Erros nunca devem passar silenciosamente. A menos que sejam explicitamente silenciados. Diante da ambigüidade, recuse a tentação de adivinhar. Deveria haver um — e preferencialmente só um — modo óbvio para fazer algo. Embora esse modo possa não ser óbvio a princípio a menos que você seja holandês. Agora é melhor que nunca. Embora nunca freqüentemente seja melhor que *já*. Se a implementação é difícil de explicar, é uma má idéia. Se a implementação é fácil de explicar, talvez seja uma boa idéia. Namespaces são uma grande idéia — vamos ter mais dessas!