Skip to content

Commit

Permalink
Merge pull request #298 from Japagabriel/master
Browse files Browse the repository at this point in the history
 Tarefa 01 - Adicionado página Markdown de Gabriel Wallace #297
  • Loading branch information
tacianosilva authored Aug 6, 2024
2 parents 995c3ac + 90a41e9 commit dc458cd
Show file tree
Hide file tree
Showing 2 changed files with 74 additions and 0 deletions.
67 changes: 67 additions & 0 deletions tarefas/20241/Japagabriel/tarefa01.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
#### Usuário github: Japagabriel
#### E-mail: gcanutosantos@gmail.com

# Informações sobre o projeto

#### Nome: SigBordado
#### Descrição: As casas de bordado são grupos de bordadeiros profissionais que recebem diversas demandas, como bordados em redes, toalhas, panos de prato e roupas. É crucial uma organização eficiente para evitar erros durante a confecção. O SigBordado é um sistema projetado para gerenciar essas demandas, facilitando a organização dos pedidos e sua atribuição aos clientes e bordadeiros responsáveis pela produção

## Equipe

Membro | GitHub |
------------------ | ------------- |
Gabriel Wallace | https://github.com/Japagabriel
Luan Victor | https://github.com/GomesLuan
Pedro Henrique | https://github.com/PHRAX8
Victor Ryan | https://github.com/VictorRyan3612


#### Repositório do projeto: https://github.com/GomesLuan/SigBordado

## JavaScript

JavaScript é uma linguagem de programação de alto nível, interpretada e multi-paradigma. Amplamente usada no desenvolvimento de páginas web interativas e dinâmicas, ela pode ser executada tanto no lado do cliente (navegador) quanto no lado do servidor (usando plataformas como Node.js). Isso permite a criação de aplicações web completas usando apenas uma linguagem de programação. A linguagem também suporta operações assíncronas, o que significa que pode lidar com tarefas como solicitações de rede sem bloquear a execução do código. Isso é especialmente importante no desenvolvimento web, onde as interações do usuário e as solicitações de rede podem ocorrer simultaneamente. A equipe possui conhecimento básico da linguagem, tendo a utilizado anteriormente na disciplina de Programação Web.

## Python

Python é uma linguagem de programação de alto nível, interpretada e de propósito geral, conhecida por sua simplicidade, legibilidade e facilidade de aprendizado. Suporta vários paradigmas de programação, incluindo programação orientada a objetos, programação imperativa e programação funcional, oferecendo grande flexibilidade na abordagem de problemas de programação. A popularidade da linguagem é impulsionada pelo seu vasto ecossistema de bibliotecas de terceiros, que permitem aos desenvolvedores aproveitar funcionalidades pré-existentes para acelerar o desenvolvimento de software. A equipe possui conhecimento intermediário na linguagem, tendo a utilizado anteriormente na disciplina de Algoritmos e Lógica de Programação, além de projetos diversos.


## Framework

Para o Frontend, será utilizado o framework ReactJS, que é comumente usado para construção de interfaces de usuário (UI), especialmente em aplicações web. O framework também é conhecido por sua abordagem de componentização e pela eficiência na atualização do DOM (Document Object Model). Para o Backend será utilizado Django, um framework de desenvolvimento web em Python que é conhecido por sua eficiência, simplicidade e escalabilidade.

## Tecnologias

Front-End: ReactJS

Back-End: Django

Banco de dados: Postgres e Docker


## IDE utilizada

Será utilizada a IDE Visual Studio Code, conhecida por sua leveza, rapidez e extensibilidade. O VS Code possui um depurador integrado para debug, permitindo que os desenvolvedores inspecionem variáveis, definam pontos de interrupção, executem passo a passo e monitorem o estado do aplicativo durante a execução. Além disso, a IDE possui integração nativa com o Git, o sistema de controle de versão mais popular. Ele fornece uma interface gráfica para executar operações Git comuns, como commit, pull, push, merge, entre outras. Os desenvolvedores podem visualizar as alterações nos arquivos, comparar versões, e gerenciar branches diretamente no editor.

## Link de Tutorial usado para fazer um CRUD na tecnologia escolhida:
* [Vídeo](https://www.youtube.com/watch?v=u_5d2WOz8Sc)

No vídeo acima, é possível observar o desenvolvimento de uma aplicação com um CRUD simples integrando Django e ReactJS. O vídeo aborda a criação de modelos, serializers e padrões de URL no backend em Django. Além disso, é mostrado como fazer um formulário e gerenciar requisições para uma api no frontend em ReactJS.

## Branch

Os branches permitem que os desenvolvedores trabalhem em funcionalidades, correções de bugs ou experimentos de forma isolada do código principal. Isso evita interferências indesejadas entre diferentes partes do código e permite que as alterações sejam desenvolvidas sem afetar o fluxo de trabalho principal. No modelo GitFlow, os branches são divididas nos seguintes tipos: Master, Develop, Features, Release, Hotfix. Cada tipo de branch é utilizado com um propósito, de tal modo que essa divisão garante a segurança do código e a eficiência do fluxo de trabalho.

## Pull Request

Um pull request é uma solicitação para mesclar as alterações de um branch para outro (por exemplo, de um branch de feature para um branch de desenvolvimento). Ele fornece uma oportunidade para revisão e feedback por parte dos colegas de equipe, ajudando a garantir a qualidade do código. Os pull requests facilitam a colaboração entre os membros da equipe, permitindo que eles discutam, comentem e revisem as alterações propostas. Isso promove uma cultura de revisão de código e comunicação aberta dentro da equipe. No modelo GitFlow, os pull requests são comumente utilizados para: transferir uma funcionalidade de um branch de feature para um branch de desenvolvimento; mesclar o branch de release de volta para o de desenvolvimento e o master, com o intuito de revisar alterações finais antes do lançamento; mesclar um branch de hotfix para os branches master e de desenvolvimento após a correção de um bug crítico.

## Versionamento Semântico

O versionamento semântico é um padrão bem definido para atribuir números de versão a software, onde cada número composto por três partes (`X.Y.Z`) indica mudanças específicas: o número major (`X`) reflete mudanças incompatíveis na API, o número minor (`Y`) indica adições de funcionalidades compatíveis e o número patch (`Z`) representa correções de bugs. Além disso, são permitidos identificadores de pré-lançamento para indicar versões em desenvolvimento. Esse sistema facilita a compreensão das mudanças e garante a compatibilidade entre diferentes versões do software, fornecendo um padrão claro e consistente para comunicação entre usuários e desenvolvedores.


## Sobre os Commits Convencionais

Os Commits Convencionais representam uma abordagem para mensagens de commit que visa padronizar a comunicação em projetos de desenvolvimento de software. Esta abordagem segue um formato específico que inclui um prefixo indicativo do tipo de alteração realizada, como `"feat"` para novas funcionalidades, `"fix"` para correções de bugs, `"docs"` para atualizações de documentação, entre outros. Esta padronização tem como objetivo facilitar a compreensão do histórico de mudanças do projeto, o que permite uma melhor organização, identificação e automação de tarefas, como a geração de changelogs e o versionamento semântico. Adicionalmente, o uso dos Commits Convencionais fomenta uma comunicação mais clara e eficaz entre os membros da equipe e os contribuidores do projeto.
7 changes: 7 additions & 0 deletions tarefas/20241/Japagabriel/tarefa02.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#### Tarefa 02 - Teste de Unidade

#### Nome: Gabriel Wallace Canuto dos Santos
#### Usuário github: Japagabriel
#### E-mail: gcanutosantos@gmail.com

#### Repositório do projeto: https://github.com/GomesLuan/SigBordado

0 comments on commit dc458cd

Please sign in to comment.