Repositório curado com foco em algoritmos, código idiomático (Pythonic), Programação Orientada a Objetos (POO) e padrões de segurança em produção. Desenvolvido por Jonas Klimaitis como parte dos estudos de engenharia de software e consolidação técnica para desenvolvimento backend.
🚀 Aplicação Prática no Mundo Real: Todos os princípios de modelagem orientada a objetos, validação de regras de negócio, tipagem estática e gestão segura de credenciais demonstrados neste repositório servem como fundação técnica aplicada diretamente no projeto principal: Projeto_Carros (plataforma SaaS em Django para gestão e precificação de veículos).
Estudos_Python/
├── 01-logica-e-algoritmos/ # 15 Desafios Algorítmicos (Tipados & PEP 8)
│ ├── 01_soma_numeros.py # Entrada, conversão de tipos e aritmética
│ ├── 02_media_escolar.py # Média simples com múltiplos argumentos
│ ├── 03_conversao_temperatura.py # Conversão analítica Celsius <-> Fahrenheit
│ ├── 04_calculadora_desconto.py # Cálculo percentual e arredondamento comercial
│ ├── 05_par_ou_impar.py # Operador de módulo (%) e paridade
│ ├── 06_maior_de_dois.py # Operadores relacionais e bifurcação condicional
│ ├── 07_verificacao_aprovacao.py # Lógica condicional de aprovação
│ ├── 08_classificacao_idade.py # Encadeamento condicional (if-elif-else)
│ ├── 09_calculadora_imc.py # Fórmula de IMC com classificação da OMS
│ ├── 10_tabuada.py # Laços 'for' e range() com saída tabulada
│ ├── 11_contagem_regressiva.py # Laço decrescente e controle de tempo
│ ├── 12_soma_ate_n.py # Acumulador em laço vs. Fórmula de Gauss O(1)
│ ├── 13_media_com_recuperacao.py # Lógica de notas com recuperação escolar
│ ├── 14_positivo_negativo_zero.py # Classificação de sinal de números reais
│ └── 15_calculadora_simples.py # Despacho de operações aritméticas com Match-Case
│
├── 02-python-idiomatico/ # Escrita Eficiente e Funcionalidades Modernas
│ ├── list_comprehensions.py # Transformação, filtragem e benchmark de performance
│ ├── dicionarios_avancados.py # Acesso seguro (.get), Dict Comprehension e operador '|'
│ └── manipulacao_strings.py # Slicing, sanitização de inputs, split/join e f-strings
│
├── 03-orientacao-a-objetos/ # POO Corporativa e Domínio de Negócio
│ ├── heranca_e_polimorfismo.py # Classes Abstratas (ABC), super() e Polimorfismo
│ └── modelagem_veicular.py # Modelo de Domínio Automotivo (Base do Projeto_Carros)
│
└── 04-configuracao-e-seguranca/ # Práticas de Nuvem e Produção (12-Factor App)
├── .env.example # Template de variáveis de ambiente
└── variaveis_ambiente_demo.py # os.getenv, fallbacks, mascaramento e segurança no Git
-
Funções Puras com Type Hints: Todas as soluções foram estruturadas como funções reutilizáveis, com anotações de tipo explícitas (PEP 484) facilitando a manutenção e análise estática (
mypy). -
Tratamento Defensivo de Exceções: Uso de blocos
try-exceptpara capturarValueErroreZeroDivisionErrorem entradas de usuário. -
Complexidade Algorítmica: No exercício 12, comparação prática entre um acumulador iterativo
$O(n)$ e a soma analítica de Gauss$O(1)$ .
- List Comprehensions vs. Loops: Demonstração prática do ganho de performance gerado por compreensões (executadas diretamente a nível de bytecode C).
- Estruturas Hash Map: Acesso resiliente a dicionários com
.get(chave, default)para evitar falhasKeyError, e fusão com o operador de uniãodict_a | dict_b(Python 3.9+). - Sanitização de Strings: Limpeza de entradas de texto, inversão de strings via slicing
[::-1]e formatação de valores monetários.
- Contratos Abstratos: Uso do módulo nativo
abc(ABCe@abstractmethod) para padronizar canais de notificação. - Modelagem de Domínio Automotivo: A classe
Veiculoimplementa o padrão@propertypara calcular de forma transparente custo total, lucro bruto e margem percentual, servindo de base arquitetural para o Projeto_Carros.
- Princípios do 12-Factor App: Separação estrita entre código-fonte e credenciais de infraestrutura via variáveis de ambiente.
- Prevenção contra Vazamentos: Demonstração de mascaramento de chaves privadas em logs de auditoria e uso de arquivos
.env.example.
Todos os módulos utilizam exclusivamente a biblioteca padrão do Python (sem dependências externas obrigatórias).
git clone https://github.com/Jklimaitis/Estudos_Python.git
cd Estudos_Pythonpython 01-logica-e-algoritmos/01_soma_numeros.py
python 01-logica-e-algoritmos/09_calculadora_imc.py
python 01-logica-e-algoritmos/15_calculadora_simples.pypython 02-python-idiomatico/list_comprehensions.py
python 02-python-idiomatico/dicionarios_avancados.py
python 02-python-idiomatico/manipulacao_strings.pypython 03-orientacao-a-objetos/heranca_e_polimorfismo.py
python 03-orientacao-a-objetos/modelagem_veicular.pypython 04-configuracao-e-seguranca/variaveis_ambiente_demo.pyJonas Klimaitis
- Estudante de Pós-Graduação em Engenharia de Software
- Foco: Python, Django, FastAPI, Java, PostgreSQL, Docker e Arquitetura de Software.
- Portfólio Principal: Projeto_Carros (SaaS Automotivo)
- GitHub: @Jklimaitis
Licença MIT — Livre para fins educacionais e profissionais.