• Stars
    star
    129
  • Rank 279,262 (Top 6 %)
  • Language
    Python
  • Created almost 3 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

https://www.linuxtips.io/products/python-base

Python Expert

Um resumo dos treinamentos contidos no Python Expert.

  1. BASE - Conceitos fundamentais que formam a base para iniciar com Python, neste treinamento além de toda a base fundamental teórica tem muito execício prático e a criação de um projeto de backend em terminal completo com interfaces, banco de dados e testes.

  2. WEB - Python focado no desenvolvimento de backend para web e APIs usando os principais frameworks do mercado como Django, Flask e FastAPI, neste treinamento criaremos um mesmo projeto cobrindo as principais necessidades do mercado web e usando os 3 principais frameworks.

  3. Automação - Python com foco em automação de operações em ambientes DevOps, Ci, Cloud, Testes, Qualidade de Software, neste treinamento falaremos sobre sockets, subprocessos, code coverage, comunicação com cloud providers e módulos Ansible, análise de performance e criação de wrapers para APIs.

  4. Engineer - Para quem quer ir além da base, neste módulo vamos explorar conceitos avançados de Python, async, metaprogramação, descritores, criaremos nosso próprio framework e falaremos sobre inspeção de objetos e hooks.

Python BASE

Você está iniciando o Python BASE que é o primeiro passo para começar a sua carreira em desenvolvimento, este treinamento é pensado para pessoas que nunca tiveram contato com programação antes, ou que já possuem algum conhecimento em alguma outra linguagem e precisam aprender Python e vamos desde a teoria base do que é programação, instalação e configuração do ambiente, escolha de um editor de código e criação do seu primeiro script até a criação de vários pequenos programas que vão abordar as principais funcionalidades do Python e vamos também criar um projeto completo do zero com as melhores práticas do mercado.

Duração estimada em horas: 64h


Conteudo:

Day 1 - Iniciando no mundo da programação

Neste capítulo você terá uma introdução ao treinamento e aos conceitos básicos de programação e a linguagem Python, também aprenderá como instalar e preparar um ambiente para programar.

  1. Introdução
  2. Programação e Linguagens
  3. Como é organizada a plataforma Python
  4. Instalação e preparação do ambiente
  5. Repositório, git e seu primeiro script
  6. Variáveis de ambiente
  7. Tipos de instruções
  8. Organização de blocos de código
  9. Ambientes virtuais, instalação de pacotes e Ipython

Duração: 5h

Day 2 - Tipos e estruturas de dados

Neste capítulo você conhecerá os tipos e estruturas de dados do Python e execicios práticos para entender como manipulamos informações.

  1. Protocolos e Tipos de dados primitivos
  2. Float, Bool, None
  3. Textos, Caracteres e Strings
  4. Formatação de texto
  5. Tipos de dados compostos e Tuplas
  6. Listas
  7. Exercicio com Listas, Tuplas, Loops e Condicionais
  8. Sets (conjuntos)
  9. Dicionários
  10. Exercicio: Refatorando nosso Hello World com dicionários

Duração: 7h

Day 3 - Input, Output, Processamento

Nesta parte do treinamento o foco é obter informações do usuário, aplicar algortimo para processar e persistir a informação em arquivos.

  1. Stdin e Stdout
  2. Leitura de inputs do stdin e de argumentos do terminal
  3. Exercicio de criação de uma calculadora infix com input e argumentos
  4. Filesystem - Manipulação de arquivos e pastas
  5. Exercicio - Criando um bloco de anotações no terminal
  6. Tratamento de Erros LBYL e EAFP
  7. Logging - Formatando e gravando logs
  8. Algoritmos e lógica - Condicionais, Operadores compostos
  9. Condicionais ternárias e inline
  10. Repetições com for, while e comprehensions.
  11. Exercicio: Sistema de Reservas com iterators, textos, inputs e arquivos de texto.

Duração: 10h

Day 4 - Funções, Debugging e seu primeiro projeto.

Neste capítulo terá muito conteúdo sobre funções com exercicios práticos e em seguida aprenderá técnicas e ferramentas para depurar erros do programa e em seguida aprenderá a criar seu próprio projeto com as melhores práticas.

  1. Funções builtin uteis - sum, len, vars, min, max, filter, map
  2. Funções úteis da biblioteca padrão - random, pprint, itertools, functools, smtplib etc
  3. Definindo suas próprias Funções e aplicando fórmula matemática
  4. Anatomia detalhada de funções - assinatura, argumentos, retornos
  5. Escopos e namespaces e argumentos coringas
  6. Funções lambda
  7. Exercicio com lambda, recursão e introdução a programação funcional
  8. Debugging - Técnicas e ferramentas para encontrar erros.
  9. O Sistema de imports do Python
  10. Criando um repositótio para seu primeiro projeto e configurando o VSCode
  11. Estrutura de pastas, build e install do projeto
  12. Entry points com console scripts
  13. Gestão de dependencias e Makefile

Duração: 12h

Day 5 - Qualidade de Software e de Código

Nesta parte focamos em testes, integração continua e qualidade do projeto incluindo testes unitários, testes de integração e adequação com code style além de uma introdução a documentação de software e empacotamento.

  1. Introdução a testes + Doctest, Pytest e Decorators
  2. Diferençá entre unit e integration tests, configuração do Pytest e CI com Github Actions
  3. Boas práticas em testes e test reports
  4. Qualidade de código, linters e auto formatação
  5. Escolhendo boas ferramentas e libraries
  6. Introdução ao TDD
  7. Introdução a persistencia de dados e testes
  8. Documentação de projetos, Empacotamento e Distribuição no PyPI

Duração: 10h

Day 6 - Orientação a Objetos

Uma das principais caracteristicas da linguagem Python é a aplicação da Orientação a Objetos seguindo um modelo que é um pouco diferente do tradicional e muito flexivel, neste capítulo falaremos sobre toda a base da orientação a objetos com Python.

  1. Os paradigmas de programação
  2. Introdução a Orientação a Objetos
  3. Inicialização de instâncias
  4. Os 4 pilares da O.O: Abstração, Herança, Polimorfismo, Encapsulamento
  5. Encapsulamento com properties
  6. Python Data Model e Protocolos
  7. Python Moderno, Type Annotations e Dataclasses
  8. Dataclass abstrata, Enums, field e super()
  9. Structural Pattern Matching

Duração: 7h

Day 7 - Consumindo e armazenando dados.

Na maior parte dos programas sempre teremos que carregar e armazenar dados e para isso precisamos aprender a usar bancos de dados SQL e consultar APIs.

  1. Modelangem de dados com dataclasses e Pydantic
  2. Prova de conceito de um ORM
  3. Introdução a SQL e SQLite
  4. SQL Alchemy
  5. SQL Model
  6. Convertendo software legado para SQL
  7. Database Migrations e Consumindo API Rest
  8. Finalização do Projeto e desafios

Duração: 8h

Day 8 - Demonstrações

Nesta última parte do treinamento a intenção é fazer uma demonstração bastante breve a respeito das ferramentas e frameworks principais do mercado, o formato não será de aula mas sim de mão na massa, seguindo o mesmo projeto desenvolvido no treinamento vamos adicionar interfaces Gráfica (GUI), 2D (Pygame), terminal (TUI), web (html) e API (REST).

  1. Interface Gráfica para Desktop - Demonstração com Tk e Pysimplegui
  2. Interface 2D para games - Demonstração com Pygame
  3. Interface Gráfica para Terminal - Demonstração com Textual (game)
  4. Interface web com html - Demonstração com Flask
  5. Interface API com REST/Json - Demonstração com FastAPI

Duração: 5h

More Repositories

1

py2rs

A quick reference guide for the Pythonista in the process of becoming a Rustacean
CSS
2,022
star
2

python-week-2022

Template Para a Python Week 2002 - 25 a 29 de Abril na LINUXTips
Python
1,848
star
3

rust-python-example

Example of using Rust to Extend Python
Python
776
star
4

python-project-template

DO NOT FORK, CLICK ON "Use this template" - A github template to start a Python Project - this uses github actions to generate your project based on the template.
Makefile
753
star
5

fastapi-project-template

DO NOT FORK, CLICK "Use this template" - The base to start an openapi project featuring: SQLModel, Typer, FastAPI, JWT Token Auth, Interactive Shell, Management Commands.
Python
290
star
6

nameko-example

Code for example in this post: http://brunorocha.org/python/microservices-with-python-rabbitmq-and-nameko.html
Python
191
star
7

flask-powered

List of companies using Flask framework - who is using Flask?
134
star
8

flask-project-template

DO NOT FORK, CLICK "Use this template" - A github template to start a Flask Project - this uses github actions to generate your project based on the template.
Python
121
star
9

rust_memes

The best memes and stickers about #rust #rustlang - listed here for easy use on talks and share
Rust
106
star
10

learndynaconf

Learn Dynaconf - the best config library for Python :)
Python
61
star
11

talkshow

A Call 4 Papers System - A simple base app as example of Flask Architecture
Python
59
star
12

wtf

What The Flask - News App da parte 1 do artigo What the Flask
Python
50
star
13

vegan_recipes

100% vegan recipes
48
star
14

dotfiles

My Environment Configurations
Lua
42
star
15

fastapi-workshop

Material do workshop - Criando API com FastAPI da LINUXtips
Python
36
star
16

python-hello-world

Hello World
28
star
17

rochacbruno

My Profile
20
star
18

i_am_learning_rust

My Rust exercices with notes (mostly based on Rust Essentials and TRPL books + exercism)
Rust
20
star
19

dundie-api

Projeto do Treinamento Python Web API LINUXtips
Shell
18
star
20

dundie-rewards

point rewards system for dunder mifflin company
Python
17
star
21

makectl

WIP - Generate and Manage targets in your makefiles.
Rust
16
star
22

python-web-api

https://cursodepython.com.br
15
star
23

DURC

Declarative Understandable Reproducible Cases - Powered by Ansible
Python
11
star
24

aprenda-rust

https://bit.ly/aprendarust
Rust
10
star
25

thunar-actions

My actions used in Thunar (XFCE file manager)
Shell
9
star
26

dynaconf_ng

You know... when a repo is created having `_ng` suffix it means the main project will evolve or is going to die...
Python
6
star
27

Postgre

A Database System Inspired by Postgres
6
star
28

rust-dynaconf

GO TO https://github.com/rubik/hydroconf
Rust
5
star
29

discord_classroom

Discord bot to work as a Learning Management System - LMS
Rust
5
star
30

python-base-1

Codigos do Treinamento Python Expert Modulo Base
Python
4
star
31

bruno-api-done

Python
4
star
32

exercism

My exercism solutions, don't COPY it!!! :) try yourself at -> https://exercism.io/
Rust
3
star
33

fastapi-workshop-template

⬅️ Click on Use This Template - Template para o workshop de FastAPI da Codecon 2021
Python
3
star
34

rust-intro

Rust Intro Repository for Data Umbrella Workshop - This repository is almost empty, only some instructions on the readme.
3
star
35

web-api-example

Python
2
star
36

micro-rust-plugin

Micro Editor rust plugin
Lua
2
star
37

trivia

Python TUI for Open Trivia Database
Python
2
star
38

smarter

Some objects could be smarter
Python
2
star
39

make-me-a-blog

One click blog
2
star
40

ansible-test

ansible.test.case is a testing framework and test runner within ansible tasks, it talks to API using openapispec, to Selenium using pageObjects and CLI using pexpect.
HTML
2
star
41

flask_admin_example

FlaskConf 2018 talk code
Python
1
star
42

dataclass-validator

Python
1
star
43

wagd

Workspace for Ansible Galaxy Development
1
star
44

conffee-maker

`$cm` or Confee Maker is a command terminal interface TUI to generate configuration files for different applications based on templates.
Rust
1
star