Skip to content

Instantly share code, notes, and snippets.

View rochapaesc's full-sized avatar

Gabriel Rocha rochapaesc

View GitHub Profile

🧩 Versionamento de Projeto no GitHub com Git

Este documento apresenta um guia prático para versionar projetos no GitHub usando Git Tags. Aplicável a qualquer tipo de código versionado com Git.


📌 Por que usar versionamento?

O versionamento com tags permite:

Guia Completo sobre APIView, Generic Views e ViewSets no Django REST Framework (DRF)

Introdução

O Django REST Framework (DRF) oferece três abordagens principais para criar views de APIs: APIView, Generic Views e ViewSets. Cada uma delas tem um nível diferente de abstração e é adequada para diferentes cenários.

Este guia explica cada uma dessas abordagens, seus usos e melhores práticas.


1. APIView

@rochapaesc
rochapaesc / flutter_localizations.md
Created April 17, 2024 12:54
Internacionalizando aplicativos Flutter

Para mudar o idioma do seu aplicativo Flutter e garantir que as opções sejam exibidas no idioma desejado, você precisa seguir alguns passos para configurar a internacionalização (i18n) e a localização (l10n) do seu aplicativo. Aqui está um guia passo a passo:

  1. Adicione o pacote Flutter Localizations ao seu projeto: Primeiro, você precisa adicionar o pacote flutter_localizations ao seu arquivo pubspec.yaml. Este pacote fornece um conjunto de traduções pré-construídas e widgets de localização que você pode usar para traduzir o conteúdo do seu aplicativo.

    dependencies:
      flutter:
        sdk: flutter
      flutter_localizations:

sdk: flutter

@rochapaesc
rochapaesc / conventionalCommits.md
Created February 5, 2024 14:32
Usando Conventional Commits

Os "Conventional Commits" (Compromissos Convencionais) são um conjunto de convenções para criar mensagens de commit padronizadas em projetos de desenvolvimento de software. Essas convenções foram introduzidas para facilitar a automação do processo de geração de changelogs, versionamento semântico e comunicação eficiente sobre as alterações realizadas no código.

As mensagens de commit no estilo Conventional Commits seguem um formato específico, que inclui um tipo, um escopo opcional e uma mensagem.

  1. Tipos de Commit:
    • feat: Adiciona uma nova funcionalidade ao código.
    • fix: Corrige um bug no código.
    • docs: Atualizações ou adições à documentação.
    • style: Ajustes relacionados à formatação e estilos de código.
  • refactor: Refatoração do código, sem alteração funcional.
@rochapaesc
rochapaesc / IntroductionDart.md
Created January 29, 2024 19:24
Uma breve introdução a linguagem Dart.

Introdução ao Dart

Uma breve introdução a linguagem Dart.

Introdução

Todo aquivo deve ter uma função de nível superior main(), que servira como ponto de entrada para iniciar seu arquivo.

Exemplo de uma função main(), sem retorno (void) que imprimi na tela uma string (List<String>):

@rochapaesc
rochapaesc / client_tcp.py
Last active November 1, 2023 16:47
Sockets em Python - Sockets permitem a comunicação entre dois processos (programas) diferentes na mesma máquina ou em máquinas diferentes.
import socket
# Configurações do servidor
HOST = '127.0.0.1'
PORT = 12345
# Cria um socket do tipo TCP
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# Conecta o socket a um endereço e porta
@rochapaesc
rochapaesc / ServerPureNode.md
Created October 15, 2023 19:43
Criando um Servidor com Node.js Puro

Criando um Servidor com Node.js Puro

Node.js é uma plataforma JavaScript que permite que você crie aplicativos do lado do servidor eficientes. Neste tutorial, vamos criar um servidor web simples usando apenas o Node.js, sem nenhum framework. Isso ajudará você a entender os conceitos básicos de como um servidor funciona.

Passo 1: Configuração do Projeto

Comece criando um novo diretório para o projeto e inicializando um arquivo package.json para gerenciar as dependências e scripts do projeto. Abra seu terminal e siga os passos abaixo:

# Crie um diretório para o projeto
@rochapaesc
rochapaesc / randomforestclassificationwithscikitlearn.ipynb
Created September 27, 2023 13:40
RandomForestClassificationwithScikitLearn.ipynb
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@rochapaesc
rochapaesc / Structure_Django.md
Last active August 8, 2025 17:16
Estrutura de pastas para Django

Estrutura de Organização de Projeto Django 🏗️

Quando se trata de desenvolvimento web com Django, a organização do seu projeto desempenha um papel crucial para facilitar o desenvolvimento, a manutenção e a colaboração. Aqui está a estrutura de organização do projeto que decidi adotar, inspirada pelo livro "Django 3 Web Development Cookbook Fourth Edition" (Copyright © 2020 Packt Publishing), e por que isso faz sentido para mim.

Diretórios Principais

📂 project_root
├── 📂 .vscode                 # Configurações do Visual Studio Code
│   └── 📄 settings.json
@rochapaesc
rochapaesc / Structure_React.md
Last active October 9, 2025 13:52
Estrutura de pastas para ReactJS/React Native

Organização de Projeto em React ⚛️

Nesse modelo de organização de arquivos em React, escolhi uma estrutura que funciona tanto para aplicações web quanto para aplicações nativas. Claro, existem algumas especificidades entre essas duas plataformas, mas a base é a mesma.


Diretórios Principais

📂 project_root