O Guia do Mochileiro Python
Melhores práticas para desenvolvimento
Descrição do livro
Pronto para concluir sua jornada de iniciante a verdadeiro pythonista? Este livro prático fornece ao leitor um guia com as melhores práticas e as ferramentas favoritas da comunidade Python. Programadores Python de nível médio interessados em contribuir para a iniciativa open source, ou em começar uma empresa baseada no uso da linguagem, sairão do básico e entrarão no universo da especialização em Python.
Escrito de forma colaborativa por mais de uma centena de membros da comunidade Python, este livro tem três seções. Primeiro, você aprenderá como instalar e usar ferramentas de edição para Python. Em seguida, examinará exemplos de códigos modelares com o estilo da linguagem. Para concluir, verá as bibliotecas mais usadas pela comunidade.
Escreva códigos Python de primeira linha aprendendo estilo, convenções, idiomas e armadilhas.
Examine ótimos exemplos de código-fonte open source em bibliotecas Python selecionadas.
Empregue as melhores práticas para empacotamento e distribuição de código Python.
Explore as bibliotecas Python de interação com o usuário, que incluem desde aplicativos de console a GUIs e aplicativos web.
Conheça ferramentas para administração do sistema, interagindo com bibliotecas C e C++ e aumentando a velocidade de Python.
Trabalhe com bibliotecas de rede para ações assíncronas, serialização e criptografia.
Examine bibliotecas de persistência e manipulação de dados, inclusive ferramentas para processamento de áudio e imagens.
Sumário
- Prefácio
- Introdução
- Capítulo 1 ■ Selecionando um interpretador
- Python 2 versus Python 3
- Recomendações
- Então… ficamos com o 3?
- Implementações
- CPython
- Stackless
- PyPy
- Jython
- IronPython
- PythonNet
- Skulpt
- MicroPython
- Capítulo 2 ■ Instalando Python apropriadamente
- Instalando Python no Mac OS X
- Setuptools e pip
- virtualenv
- Instalando Python no Linux
- Setuptools e pip
- Ferramentas de desenvolvimento
- virtualenv
- Instalando Python no Windows
- Setuptools e pip
- virtualenv
- Redistribuições comerciais de Python
- Instalando Python no Mac OS X
- Capítulo 3 ■ Seu ambiente de desenvolvimento
- Editores de texto
- Sublime Text
- Vim
- Emacs
- TextMate
- Atom
- Code
- IDEs
- PyCharm/IntelliJ IDEA
- Aptana Studio 3/Eclipse + LiClipse + PyDev
- WingIDE
- Spyder
- NINJA-IDE
- Komodo IDE
- Eric (Eric Python IDE)
- Visual Studio
- Ferramentas interativas melhoradas
- IDLE
- IPython
- bpython
- Ferramentas de isolamento
- Ambientes virtuais
- pyenv
- Autoenv
- virtualenvwrapper
- Buildout
- conda
- Docker
- Mãos à obra
- Editores de texto
- Capítulo 4 ■ Escrevendo códigos incríveis
- Estilo de código
- PEP 8
- PEP 20 (também conhecida como o Zen do Python)
- Recomendações gerais
- Convenções
- Idiomas
- Armadilhas comuns
- Estruturando seu projeto
- Módulos
- Pacotes
- Programação orientada a objetos
- Decorators
- Tipificação dinâmica
- Tipos mutáveis e imutáveis
- Vendorizando dependências
- Testando seu código
- Fundamentos da execução de testes
- Exemplos
- Outras ferramentas populares
- Documentação
- Documentação do projeto
- Publicação do projeto
- Docstrings versus comentários de bloco
- Logging
- Logging em uma biblioteca
- Logging em um aplicativo
- Selecionando uma licença
- Licenças upstream
- Opções
- Recursos sobre licenciamento
- Estilo de código
- Capítulo 5 ■ Lendo códigos incríveis
- Características comuns
- HowDoI
- Lendo um script de arquivo único
- Exemplos da estrutura do HowDoI
- Exemplos do estilo do HowDoI
- Diamond
- Lendo um aplicativo maior
- Exemplos da estrutura do Diamond
- Exemplo de estilo do projeto Diamond
- Tablib
- Lendo uma biblioteca pequena
- Exemplos da estrutura do Tablib
- Exemplos de estilo do Tablib
- Requests
- Lendo uma biblioteca maior
- Exemplos da estrutura do Requests
- Exemplos de estilo do Requests
- Werkzeug
- Lendo o código de um kit de ferramentas
- Exemplos de estilo do Werkzeug
- Exemplos da estrutura do Werkzeug
- Flask
- Lendo o código de um framework
- Exemplos de estilo do Flask
- Exemplos de estrutura do Flask
- Capítulo 6 ■ Distribuindo códigos incríveis
- Vocabulário e conceitos úteis
- Empacotando seu código
- Conda
- PyPI
- Congelando seu código
- PyInstaller
- cx_Freeze
- py2app
- py2exe
- bbFreeze
- Fazendo o empacotamento de Linux-built distributions
- Arquivos ZIP executáveis
- Guia de cenários
- Capítulo 7 ■ Interação com o usuário
- Notebooks Jupyter
- Aplicativos de linha de comando
- Aplicativos de GUI
- Bibliotecas de widgets
- Desenvolvimento de jogos
- Aplicativos web
- Frameworks/microframeworks web
- Engines de templates web
- Implantação na web
- Capítulo 8 ■ Gerenciamento e melhoria do código
- Integração contínua
- Administração de sistemas
- Automação de servidores
- Monitoramento de sistemas e tarefas
- Velocidade
- Interagindo com bibliotecas C/C++/Fortran
- Capítulo 9 ■ Interfaces de software
- Clientes web
- APIs Web
- Serialização de dados
- Sistemas distribuídos
- Rede
- Criptografia
- Clientes web
- Capítulo 10 ■ Manipulação de dados
- Aplicativos científicos
- Manipulação e mineração de texto
- Ferramentas de strings da biblioteca-padrão Python
- Manipulação de imagens
- Capítulo 11 ■ Persistência de dados
- Arquivos estruturados
- Bibliotecas de banco de dados
- Apêndice A ■ Notas adicionais
- Comunidade Python
- BDFL
- Python Software Foundation
- PEPs
- Aprendendo Python
- Iniciantes
- Intermediário
- Avançado
- Para engenheiros e cientistas
- Tópicos variados
- Referências
- Documentação
- Notícias
- Comunidade Python
Sobre os autores
Kenneth Reitz é o product owner de Python no Heroku e é membro da Python Software Foundation. Ele é conhecido por seus muitos projetos open source, especificamente Requests: HTTP for Humans.… Ver perfil completo ▶
Tanya Schlusser é a principal cuidadora de sua mãe, que tem Alzheimer, e é uma consultora autônoma que usa dados para tomar decisões estratégicas. Ela ministrou mais de mil horas de treinamento em ciência de dados a alunos particulares e equipes corporativas.… Ver perfil completo ▶
Livros relacionados
Recursos
Opinião dos leitores
Paulo S da S G
Bom livro.
Gustavo G
Muito bom livro. Dentro do que eu esperava e precisava. Ótimo para consultas e dúvidas em pequenos detalhes da linguagem.
Lucas P
Esse livro mostra o caminho para os iniciantes e coloca nas rédeas os mais experientes. O modo como ele exibe as melhores práticas e quais decisões tomar quando se desenvolve em Python é muito claro e direto, com certeza um livro para todo mundo que quer ser um Pythonista melhor e produzir um código de primeira linha.
Welton V de S
Este guia open source fornece ao leitor iniciante ou intermediário um manual de melhores práticas para a instalação, configuração e uso da linguagem de programação Python no cotidiano. Leitura fácil, explica muito os conceitos e fornece exemplos fáceis de compreender. Não achei nenhum erro no livro e nos exemplos. Recomendo a leitura!






