Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

18 Commits

Folders and files

Repository files navigation

Projeto SUPERGEEK - TypeScript & POO

Simulador Educacional de E-commerce | Portfólio Profissional



Status: Concluído


O Projeto E-commerce Super Geek é um projeto educacional desenvolvido em TypeScript, com foco em Programação Orientada a Objetos (POO) e arquitetura modular, simulando operações de cadastro de e-commerce reais como CRUD de Produtos, buscas por Nome.

Objetivo: Demonstrar organização, domínio técnico, modelagem de domínio e boas práticas de engenharia de software em um case prático de portfólio.


Warning

Este projeto possui fins educacionais e não representa um sistema E-commerce real. Foi desenvolvido para aprendizado, demonstração técnica e portfólio profissional.


Este projeto foi estruturado para:

  • Demonstrar competência técnica em TypeScript
  • Aplicar POO em um cenário realista
  • Evidenciar arquitetura limpa e organização de código
  • Simular regras de cadastros de produtos
  • Servir como case técnico para recrutadores

Competências Técnicas Demonstradas

  • Programação Orientada a Objetos (Encapsulamento, Herança, Polimorfismo)
  • Modelagem de domínio orientada a objetos
  • Arquitetura em camadas (Model, Repository, Controller)
  • Tipagem forte com TypeScript
  • Separação de responsabilidades
  • Boas práticas de código e organização modular
  • Simulação de regras financeiras
  • Validação de entradas e controle de fluxo
  • Estrutura pronta para evolução futura (API, DB, testes)

Impacto Técnico e Métricas

Indicador Valor
Linhas de código +600
Classes principais 5
Funcionalidades implementadas 8
Conceitos POO aplicados 6+
Camadas arquiteturais Model, Repository, Controller
Persistência Simulada em memória
Complexidade lógica Média
Uso educacional ✅

Funcionalidades do Projeto

Funcionalidade Status
CRUD de Produtos ✅
Ver Lista de Produtos ✅
Atualizar Produto ✅
Apagar Produto ✅
Consulta por ID ✅
Consulta por nome do Produto ✅
Testes ✅
Interface CLI interativa ✅

Diagrama de Classes

classDiagram
class Produto {
  - _produtoId: number
  - _tipo: number
  - _nomeProduto: string
  - _preco: number
  + get produtoId() number
  + get tipo() number
  + get nomeProduto() string
  + get preco() number
  + set produtoId() number
  + set tipo() number
  + set tipo(tipo: number) void
  + set nomeProduto() string
  + set preco() number
  + visualizar() void
}
class ActionFigure {
  - _actionFigure: string
  + get actionFigure() string
  + set actionFigure(value: string) void
  + visualizar() void
}
class Poster {
  - _poster: string
  + get poster() string
  + set poster(value: string) void
  + visualizar() void
}
class Games {
  - _games: string
  + get games() string
  + set games(value: string) void
  + visualizar() void
}
class Outros {
  - _outros: string
  + get outros() string
  + set outros(value: string) void
  + visualizar() void
}
ActionFigure --> Produto
Games --> Produto
Outros --> Produto
Poster --> Produto

Loading

Arquitetura do Projeto

Estrutura organizada para facilitar manutenção, escalabilidade e leitura técnica:

📦 Super Geek
 ┣ 📂 src
 ┃ ┣ 📂 controller     # Regras de aplicação
 ┃ ┣ 📂 model          # Entidades de domínio
 ┃ ┣ 📂 repository     # Persistência simulada
 ┃ ┗ 📂 util           # Utilidades e helpers
 ┣ 📜 Menu.ts          # Ponto de entrada da principal
 ┗ 📜 tsconfig.json

Tecnologias Utilizadas

  • Linguagem & Runtime

    • TypeScript

    • Node.js

    • ts-node

  • Ferramentas & Qualidade

    • Git & GitHub
    • Mermaid (diagramas UML)
    • CLI interativa (terminal)

Como Executar

1️⃣ Clone o repositório

git clone https://github.com/outwake/Ecommercesupergeek.git

2️⃣ Acesse a pasta do projeto via terminal

cd Super_Geek

3️⃣ Instale as dependências

npm install

4️⃣ Execute a aplicação

ts-node Menu.ts

Implementações Futuras

  • Persistência com banco de dados
  • Testes automatizados (Jest)
  • API REST com NestJS
  • Interface Web (React)
  • Dockerização
  • CI/CD com GitHub Actions

Contribuições

Sugestões, melhorias e pull requests são bem-vindos.

Você pode contribuir com:

  • Melhorias arquiteturais
  • Refatorações
  • Testes automatizados
  • Documentação

Licença

Este projeto está sob licença MIT — livre para uso educacional e profissional.


Autor

Lary, a pioral — Desenvolvedora Full Stack

🔗 GitHub: https://github.com/outwake

🔗 LinkedIn: https://www.linkedin.com/in/larissa-ferreira-mendonça-49655a185/

Projeto desenvolvido para aprendizado contínuo, demonstração técnica e portfólio profissional.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages