Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Desafio - Ruth #390

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open

Conversation

RuthLopesDiniz
Copy link

@RuthLopesDiniz RuthLopesDiniz commented Nov 20, 2024

Envio de solução

Gostariamos de entender como você pensa e as decisões que você tomou durante o desenvolvimento, detalhe um pouco mais sobre:

Framework, linguagem e ferramentas
Descreva ferramentas e bibliotecas (libraries, framework, tools etc) você usou.

Ferramentas: Xamp, VsCode, postman (testar as rotas), MySql, phpmyadmin.
Frameworks:
NestJs: foi o meu primeiro contato com este framework, porém foi muito tranquilo aprender ele, tem muito vídeo pela internet e sua documentação é bem completa. Gostei muito.

Angular18: já tive contato com ele antes, na versão 11 em cursos. Posso dizer que aprendi mais fazendo este desafio, precisei buscar soluções para diversos problemas no código e na estrutura. Foi mais complicado do que o NestJs para entender.

Técnologias X e Y
Justifique porque você optou pela tecnologia X e não a Y?

MySql: escolhi usar por já conhecer e ter facilidade com a ferramenta.
NestJs e Angular18 foram exigências no teste.
No Angular optei por standalone component para facilitar a integração dos componentes, não usei rotas por ser uma aplicação pequena entendi que não precisava.
Escolhi Sass CSS por já ter experiência com ele.
TypeORM : a escolha do TypeORM foi motivada por seu poder em simplificar e modernizar a interação com bancos de dados, ele realiza operações de CRUD usando repositórios, tornando a interação com o banco de dados mais eficiente e alinhada às boas práticas de repositórios em sistemas de camadas.

Princípios de software

Quais princípios da engenharia de software que você usou?
Princípio da Separação de Responsabilidades (SRP):
No Angular, os componentes lidam com a exibição, enquanto os serviços são responsáveis pela comunicação com a API. Separei as responsabilidades entre o front-end (Angular) e o back-end (NestJS).

Princípio da Inversão de Dependência (DIP):
Ao usar a injeção de dependências no Angular (através de serviços como KanbanService) e no NestJS, desaclopei a lógica de negócios de seus componentes. Isso torna o sistema mais flexível, testável e de fácil manutenção.

Desafios e problemas
Conte um pouco sobre os desafios e problemas que você enfrentou e como você resolveu.

O primeiro desafio foi com os commits no repositório forkado, os arquivos subiam todos misturados, sem organização. Depois, de vários testes e branches criadas e excluídas, descobri que precisava realizar o clone para meu reposítório local. Era somente esse o erro, aprendi!
Um outro desafio foi o tempo, como trabalho e faço faculdade precisei me programar para dedicar um tempo para desenvolver esse desáfio durante a noite, acredito que o a falta de conhecimento nos frameworks me limitou na questão de atender a todos os requisitos no tempo determinado.

Melhorias e próximas implementações
O que você entende que pode ser melhorado e como isso pode ser feito?

Quero continar o desenvolvimento desse projeto melhorando o layout, implementando a função de mover os cards entre as colunas e alterar o status no banco de dados também, finalizar a implementação do crud e fazer testes unitários e integrados.

Vídeo de apresentação
https://youtu.be/OThAM_e8tKc

Sobre você

Queremos te conhecer um pouco melhor, conte um pouco sobre você.
Onde nasceu/De onde você é? Lugares que estudou, empresas que trabalhou, como você se envolveu com desenvolvimento de software.. enfim, Quem é você?

Nasci no Maranhão, mas moro em São José do Rio Preto desde 2010. Tenho 36 anos, Cursei Analise e desenvolvimento de sistemas na Fatec e atualmente curso tecnologo em Sistemas para Internet.
Trabalho atualmente como monitora de escritório em uma empresa de telecomunicações mas, quero ser desenvolvedora e seguir novos rumos, formando assim uma carreira. Desde a faculdade tive contato com programação, mas atuei principalmente com suporte no estágio. Gosto de estudar e me mantenho aprendendo estudando em todas as minhas horas vagas para estar apta para as oportunidades que surgirem.
Desde 2022 venho estudando contantemente sobre programação e me envolvendo em projetos que possam agregar em meus conhecimentos e me proporcionar experiência.

Agradeço pela oportunidade de fazer esse desafio que me fez dormir menos pois precisava me dedicar, fui além dos meus limites e me preocupei com a entrega. Tenho certeza que no próximo desáfio vou ser melhor ainda.

@RuthLopesDiniz RuthLopesDiniz changed the title Desáfio - Ruth Desafio - Ruth Nov 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant