banner-pix

eBook: Jornada Python



  • R$ 84,00

Venda de e-book Compre na Amazon Compre no Google Play
André Guilhon
Agile Coach, Scrum Master e 17 anos de experiência na área de tecnologia, atuando em diversas áreas, desde infraestrutura até desenvolvimento de software. Fundador da comunidade TI com Café, com foco no networking profissional do pessoal de TI. Ex-militar, empreendedor, apaixonado por pessoas, protagonismo, autoconhecimento e propósito de vida.


Antonio Muniz

Colaborou com mais de 30 mil pessoas e mais de 100 times em consultorias, mentorias, cursos de MBA, bootcamps, videoaulas, workshops e palestras em empresas líderes de mercado, como SulAmérica, Petrobras, Vivo, Itaú, Oi, Furnas, Eletrobras, Energisa, Via Varejo, DHL, Accenture, Icatu, Banco do Brasil, Banco Safra, Banco PAN, Citibank, Ernst & Young, Finep, Sebrae, UOL, Pagseguro, Makro, Totvs, Jucesp, Ambev Tech, Dafiti, Meta, Banco Carrefour, Prudential etc. Como fundador e headhunter da Jornada Colaborativa, formou novas lideranças, com R$ 502 mil doados para instituições e o lançamento de mais de 30 livros e eventos com empresas amigas. Sua formação tem uma base multidisciplinar em negócios, tecnologia e liderança, com mestrado em administração no Ibmec, MBA em telecomunicações na FGV, graduação em tecnologia na Unigranrio e certificações em agilidade, tecnologia Lean, projetos, processos e serviços.

Contato: munizprofessor@gmail.com


English version:

Inspired more than 30,000 people and teams in MBA courses, bootcamps, video classes, workshops, consulting and lectures in leading companies such as SulAmérica, Petrobras, Vivo, Itaú, Oi, Furnas, Eletrobras, DHL, Banco do Brasil, Banco Safra, Banco PAN, Ernst & Young, Finep, Sebrae, UOL, Pagseguro, Makro, Totvs, Jucesp, Ambev Tech and Dafiti.
Cláudio Gomes

Engenheiro de Computação, formado no Instituto Militar de Engenharia. Analista de Sistemas Sênior na Petrobras S/A, onde atua como Cientista de Dados na Diretoria de Exploração de Produção. Apaixonado por conhecimento, também pratica o desenho artístico e a fotografia de rua em seu tempo livre.

 

Eduardo Gaspar

Organizador do Meetups Analytics em Tudo, Big Data RJ e Data Science RJ. Apaixonado por algoritmos, desenvolvimento de software, inteligência artificial e métodos ágeis. Cientista da computação formado pela PUC-RJ e pós-graduado nas áreas de big data, gestão de projetos e engenharia de software.

 

Juliana Guamá

Engenheira de Sistemas pela Unimontes, pós-graduanda em machine learning pelo IGTI e atualmente Cientista de Dados na Take Blip. É palestrante, mentora, apaixonada pelo trabalho desenvolvido pelas comunidades técnicas de BH e atuante no fortalecimento e na presença de mulheres na área de tecnologia.


Karine Cordeiro

Software Engineer, coautora de livros da Jornada Colaborativa. É curadora de conteúdos na She’s Tech Conference, faz parte da organização do DevDay e coordena trilhas no TDC. Graduada em Sistemas de Informação pela UNA e pós-graduada em Desenvolvimento de Aplicações Móveis pela PUC Minas. É apaixonada por comunidades e atua no fortalecimento da presença de mulheres na área de tecnologia.

 

Rodrigo Isensee

Agile Coach, professor universitário, amante de artes marciais práticas e entusiasta de tecnologia desde os oito anos de idade (enquanto a galera soltava pipa ele programava). Apaixonado por ensinar e pelo aprendizado colaborativo.

 

Tatiana Escovedo

Cientista de Dados, Engenheira de Software e Agilista apaixonada por ensinar e aprender. Doutora em Inteligência Artificial, Mestre em Engenharia de Software, Bacharel em Informática, Professora da PUC-Rio e Analista de Sistemas da Petrobras. Nas horas vagas, é bailarina e pensa em maneiras de mudar o mundo.


eBook: Jornada Python: uma jornada imersiva na aplicabilidade de uma das mais poderosas linguagens de programação do mundo

Neste livro você será guiado em uma viagem chamada “Jornada Python”, iniciando com os fundamentos da linguagem, passando por orientação a objetos, boas práticas de programação e chegando a alguns assuntos mais avançados, como o desenvolvimento de aplicações web e ciência de dados. Esperamos vocês. Tenha uma boa viagem!


A Jornada Colaborativa

Era uma vez um professor universitário que sonhava em lançar um livro quando finalizou o mestrado em 2006. O sonho começou a ser concretizado em 2017 com o livro “Jornada DevOps”, mas alguns obstáculos travaram sua evolução após a escrita de três capítulos.

Em setembro de 2018, durante sua palestra na PUC Minas, surgiu um click: “Será que outras pessoas apaixonadas por DevOps ajudariam com a escrita colaborativa?

Dezenas de colaboradores aceitaram o convite e o livro foi lançado para 350 pessoas no dia 06 de junho de 2019 no Centro de Convenções SulAmérica, no Rio de Janeiro.

A escalada dos times gerou novas amizades, aprendizados, doação de R$ 277.000,00 para instituições com o lançamento de 15 livros e sonhamos transformar mais vidas com a inteligência coletiva e o apoio de empresas amigas.

Coautores:

Adamys Monnerat

Alexandra Raibolt

Alexandro Angelo Romeira

André Guilhon

Antonio Muniz

Bruno Hanai

Carlos Eduardo Silva Castro

Cassius T. C. Mendes

Cláudio Henrique Franco Gomes

Daniele A. Longato da Silva

Davi Frazão

Davi Luis de Oliveira

Eduardo Bizarria Gaspar

Edytarcio Pereira

Élysson Mendes Rezende

Eric Gomes

Everton de Castro

Filipe Rudá

Flávio Mariano

Francisco Hugo Siqueira Rosa

Guilherme Arthur de Carvalho

Guilherme de Almeida Gasque

Guilherme Ito

Guilherme Rozenblat

Helcio Gomes

Jefferson da S. Nascimento

Joan Davi

João Pedro Prates da Conceição Galhianne

John Kevid

Juliana Guamá

Karina Tiemi Kato

Karine Cordeiro

Lourena Ohara

Lucas Pastana

Lucas Vieira Araujo

Luiz Paulo O. Paula

Marcell Guilherme C. da Silva

Marco Alencastro

Marcos Alexandre Castro

Marcus Paiva

Mikaeri Ohana Estevam Candido

Naiara Cerqueira

Pablo Augusto Furtado

Paulo R. Z. Pinto

Rafael Gonsalves Cruvinel

Reinaldo Maciel

Rodrigo Alves Mendonça

Rodrigo Isensee

Roger Sampaio

Saulo Filho Percival

Sérgio Berlotto Jr.

Sidnei Santiago

Tatiana Escovedo

Viviane Laporti

William Villela de Carvalho

Wygna Yngrid da Silva Matias Xavier

Yussif Barcelos Dutra

 
E-ISBN 978-65-88431-51-1
Edição 1
Idioma Português
Lançamento 01/02/2022
Páginas 552
Ano 2022
Sumário
SUMÁRIO JORNADA PYTHON

PARTE I. CONHECENDO A LINGUAGEM
1. Introdução (Eduardo Gaspar/Karine Cordeiro/Rodrigo Isensee)

O que é, para que serve e onde usar

2. História do Python (Wygna Yngrid da Silva Matias Xavier)

Tipos básicos – Classes

Tipos básicos – strings

Tipos básicos – Inteiros e longos

Tipos básicos – Comparações

3. Por que escolher Python? (Pablo Augusto Furtado)

Tipagem dinâmica

Simplicidade

Linguagem de alto nível

Multifuncionalidade

Desempenho

Produtividade

Comunidade

4. Biblioteca padrão e documentação oficial (Paulo R. Z. Pinto)

Definições

5. PEP – Python Enhancement Proposal (Sérgio Berlotto Jr.)

PARTE II. PREPARANDO O AMBIENTE

6. Instalando (Marcus Paiva/Naiara Cerqueira)

Windows

Linux

MacOS

7. Primeiro programa (Adamys Monnerat/Tatiana Escovedo/Guilherme Rozenblat)

Imprimindo na saída padrão

Modo script

Tipos de script e suas linguagens

Interpretador

CLI

8. IDEs (Yussif Barcelos Dutra/Naiara Cerqueira)

Jupyter Notebook

Spyder

PyCharm

Visual Studio Code

9. Criação de ambiente virtual (Sérgio Berlotto Jr./Alexandra Raibolt/Juliana Guamá)

Ferramentas de gestão de ambiente virtual

venv

virtualenv

virtualenvwrapper

pipenv

conda

10. Gerenciadores de pacotes (Jefferson da S. Nascimento/Cláudio Henrique Franco Gomes)

11. Linters (Cláudio Henrique Franco Gomes)

Visual Studio Code

PyCharm

Spyder

Jupyter Lab

Python Code Quality Authority

PARTE III. FUNDAMENTOS DE PROGRAMAÇÃO

12. Tipos de dados e variáveis (Davi Luis de Oliveira)

13. Expressões e comentários (Lucas Vieira Araujo)

Expressões

Avaliação de expressões

Avaliação em curto-circuito

Comentários

14. Mutabilidade e imutabilidade (Lucas Vieira Araujo/Flávio Mariano/John Kevid)

15. Strings (Rafael Gonsalves Cruvinel)

Escrevendo strings

Formatando strings

Formatação ‘%-format’

Formatação com ‘format’

Formatação com ‘F-string’

Grupo de strings

Funções com string

Somando strings

Multiplicação de strings

Funções built-in

Funções que retornam um boolean

16. Coleções (Rodrigo Alves Mendonça)

Tipos de coleções

Iteração

Lista (list)

Tupla (tuple)

Dicionário (dict)

Views de dicionários

Conjunto (set e frozenset)

17. Operadores e condicionais (Daniele A. Longato da Silva)

18. Controle de fluxo (Filipe Rudá/Lucas Pastana)

Desmistificando o for

Controlando o fluxo de repetição com break, continue e pass

Looping inline

19. Tratamento de exceções e erros (Guilherme Ito)

Definição e exemplos

Capturando exceções

Levantando exceções

Customizando exceções

Extra – Classes Exception e BaseException

20. Comprehension (Sérgio Berlotto Jr.)

21. Funções (Cláudio Henrique Franco Gomes)

Criando uma função

Escopo de variáveis

Parâmetros e valores de retorno

Parâmetros arbitrários

Lambda

Funções aninhadas

Funções de primeira classe

Decorators

Anotações e documentações em funções

22. Manipulação de arquivos (Guilherme Arthur de Carvalho)

Método builtin open

Criando uma agenda

23. Conexão com banco de dados (Cláudio Henrique Franco Gomes)

24. Documentando o código (Juliana Guamá/Roger Sampaio)

Docstrings

Pydoc

Type hinting

Estilos para Docstrings

GoogleDoc

NumpyDoc

PARTE IV. ORIENTAÇÃO A OBJETOS

25. Introdução à orientação de objetos e seus quatro pilares (Tatiana Escovedo/Viviane Laporti)

26. Classes, objetos, métodos e atributos (Cláudio Henrique Franco Gomes)

Definição

Sintaxe

Objetos e instâncias

Métodos

Atributos

27. Encapsulamento (Tatiana Escovedo/Viviane Laporti)

28. Herança, polimorfismo e classes abstratas (Tatiana Escovedo/Viviane Laporti)

Herança

Polimorfismo

Classes abstratas

29. Associação, agregação e composição (Tatiana Escovedo)

30. Decoradores de métodos e de classes (Cláudio Henrique Franco Gomes)

Métodos estáticos

Métodos de classe

Propriedades

31. Generators (Cláudio Henrique Franco Gomes)

Generator Pattern

Expressão Generator

32. Maps (Jefferson da S. Nascimento)

33. Descriptors (Cláudio Henrique Franco Gomes)

Classe property

Decorators

Criação dinâmica de descriptors

Prós e contras

34. Métodos mágicos (Sérgio Berlotto Jr.)

35. Modelos arquiteturais (Davi Luis de Oliveira/Karine Cordeiro)

Arquitetura em camadas

SOA

MVC

MVT

Arquitetura de microsserviços

PARTE V. TÓPICOS AVANÇADOS DE PROGRAMAÇÃO

36. SOLID (Eduardo Gaspar/Helcio Gomes/Rodrigo Isensee/Sérgio Berlotto Jr./Tatiana Escovedo/WilliamVillela de Carvalho)

Princípio de responsabilidade única

Princípio aberto/fechado

Princípio da substituição de Liskov

Princípio da segregação de interfaces

Princípio da inversão de dependência

37. Guia de estilos (Alexandro Angelo Romeira)

Nomenclatura

Layout de código

Comentários e notas explicativas

38. Programação funcional (Marcell Guilherme C. da Silva)

39. Concorrência e programação assíncrona (Rodrigo Alves Mendonça/Edytarcio Pereira/Marco Alencastro)

Programação síncrona e assíncrona

Concorrência e paralelismo

GIL – Global Interpreter Lock

O módulo AsyncIO

Ciclo de eventos (event loop)

Corrotinas (coroutines)

Futures e objetos de espera (awaitable objects)

Pontos de atenção na programação assíncrona

Conclusão

40. Metaprogramação (Cláudio Henrique Franco Gomes)

41. Clean code e boas práticas (Sérgio Berlotto Jr.)

Nomes são importantes

Não use abreviações

Utilize nomes descritivos

Sempre pergunte o que você quer saber de forma clara

Utilize booleanos de forma implícita

Cuidado com a quantidade de parâmetros

Comentários são vilões quando mal utilizados

A regra do escoteiro

Teste sempre

SOLID

Padrões de projeto

Conclusão

PARTE VI. TESTES

42. Introdução a testes (Marcell Guilherme C. da Silva)

43. TDD – Test Driven Development (Cláudio Henrique Franco Gomes)

44. Bibliotecas built-in (Jefferson da S. Nascimento)

45. Testes unitários e testes automatizados (Saulo Filho Perceval/Lourena Ohara)

Testes unitários

Escrevendo testes unitários

Princípios para escrever bons testes unitários

Cobertura de código

Tipos de teste unitário

Testes automatizados

Automatizando testes funcionais

Automatizando testes de API com Python

GET

POST

PUT

DELETE

46. Mocks (Cláudio Henrique Franco Gomes)

Decorator patch

Valores de retorno e efeitos colaterais

Imitando métodos de instâncias e de classes

Imitando propriedades de classes

Imitando classes inteiras

PARTE VII. DESENVOLVIMENTO DE APLICAÇÕES WEB

47. Fundamentos da web (Everton de Castro/Tatiana Escovedo)

O protocolo HTTP

Modelo cliente-servidor

HTML

Folhas de estilo e scripts

48. Web APIs (Karine Cordeiro/Marcus Paiva/Naiara Cerqueira)

O que é uma API?

Formatos de comunicação para APIs

O que é uma REST?

O que é uma RESTful API?

O que é GraphQL?

O que é WSGI?

49. Conceito de frameworks (Tatiana Escovedo)

50. Django (André Guilhon/Élysson Mendes Rezende)

Como o Django funciona?

Estrutura do Django

Início do projeto

Configurando um banco de dados

Modelos do Django

Migrations

Módulo de administração do Django

Telas de acesso do usuário

Configuração de rotas internas

Cadastrando novos produtos no banco de dados

Editando produtos no banco de dados

Excluindo produtos no banco de dados

51. Flask (Marcos Alexandre Castro/Sérgio Berlotto Jr.)

Um pouco mais sobre o Jinja

52. Executando tarefas assíncronas (Guilherme Arthur de Carvalho)

PARTE VIII. ANÁLISE DE DADOS

53. Introdução ao processo de ETL (Guilherme de Almeida Gasque)

O que é ETL?

Extração

Transformação

Carga

54. Web scraping (Francisco Hugo Siqueira Rosa)

55. Manipulação e tratamento de dados (Luiz Paulo O. Paula/Bruno Hanai/Davi Frazão/Joan Davi)

NumPy

Criação de arrays unidimensionais

Reshape de arrays

Split de arrays

Operações com matrizes

Pandas

Operações com dataframes

Criando colunas

Renomeando colunas

Removendo colunas

Fatiamento (slicing)

Métodos iloc e loc

Método apply

56. Visualização de dados (Tatiana Escovedo/Marcos Alexandre Castro)

Matplotlib

Pandas

Seaborn

Plotly

Dash

57. Conceitos e aplicações de big data (Sidnei Santiago/Lucas Pastana)

O que é big data?

Volume de dados produzidos

Dados estruturados e não estruturados

PARTE IX. INTELIGÊNCIA DE DADOS

58. Introdução à inteligência artificial (Mikaeri Ohana Estevam Candido)

Visões de inteligência artificial

História da inteligência artificial

Abordagens da inteligência artificial

Divisões da inteligência artificial

Machine learning

Deep learning

Aplicações da inteligência artificial

59. Machine learning – conceitos e modelos (Tatiana Escovedo)

Classificação

Regressão

Clusterização

Associação

Algoritmos de machine learning

Árvore de decisão

K-vizinhos mais próximos (KNN)

Regressão linear

Regressão logística

Naïve Bayes

Support Vector Machines (SVM)

K-means

Para saber mais

60. Deep learning (Alexandra Raibolt)

Artificial Neural Networks

Single-Layer Perceptron

Multilayer Perceptron

Convolutional Neural Networks

Recurrent Neural Networks

Long Short-Term Memory

Autoencoders

Generative Adversarial Networks

Deep Reinforcement Learning

Natural Language Processing

Considerações finais

61. Visão computacional (Alexandra Raibolt)

Prática: detecção, descrição e correspondência de características com ORB

62. Scikit-Learn (Carlos Eduardo Silva Castro/Tatiana Escovedo/Cassius T. C. Mendes)

Representação de dados

A API Estimator

Validação de modelos

Prática: projeto de classificação binária usando o Scikit-Learn

Passo 1 – Definição do problema

Passo 2 – Carga de dados

Passo 3 – Análise de dados

Passo 4 – Pré-processamento de dados: separação em conjunto de treino e conjunto de teste

Passo 5 – Modelos de classificação

Passo 6 – Finalização do modelo

63. TensorFlow (Cláudio Henrique Franco Gomes)

Instalação

Tensores

Carregamento de dados

Pré-processamento

Modelagem

Métricas

64. PyTorch (Reinaldo Maciel)

História

Por que PyTorch?

Instalação

Trabalhando com o PyTorch

Desenvolvendo com o PyTorch

65. Keras (João Pedro Prates da Conceição Galhianne)

Por que Keras?

Instalação

Prática

Iniciando o modelo

Apurando o modelo

66. Desenvolvimento de chatbot (Eric Gomes)

PARTE X. AUTOMAÇÃO DE PROCESSOS

67. Serverless (Alexandro Angelo Romeira)

68. CI e CD (Davi Luis de Oliveira)

69. Gerando packages e publicando no PyPi (Karina Tiemi Kato)

Referências bibliográficas

Dedicatória e agradecimentos

Sobre os organizadores e coautores

Escreva um comentário

Você deve acessar ou cadastrar-se para comentar.

Etiquetas: Jornada Phyton; Phyton; Jornada;