RafaelCapo /
site-php-mvc-crud
Projeto desenvolvido na série de vídeos "Criando site em PHP + MVC + CRUD".
65/100 healthLoading repository data…
Brennda2 / repository
Projeto desenvolvido na disciplina Programação Orientada a Objeto com PHP
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Projeto desenvolvido em grupo na disciplina Programação Orientada a Objeto com PHP.
Abra a pasta Floricultura com o vscode: certifique-se de ter o php e composer baixados na maquina!!
Instale as dependências do Composer: utilize no seu terminal o comando: composer install Este comando irá gerar o diretório vendor e o arquivo autoload.php, que é necessário para carregar as classes do namespace Brennda\Floricultura automaticamente.
Execute o programa: Abra seu terminal ou console e execute o seguinte comando na raiz do projeto: php index.php
Interaja com o menu: Após a execução, o menu principal será exibido no console, e você poderá escolher as opções digitando o número correspondente.
O sistema foi estruturado utilizando Programação Orientada a Objetos para utilizar em um gerenciamento de estoque e catalogação de produtos para uma floricultura, desenvolvido em PHP.
Estrutura de Classes
---> Classes Abstratas:
1. Produto: Classe mãe abstrata que define atributos básicos como: nome, quantidade, preco e os métodos utilizando polimorfismo: exibirDetalhes, calcularPreco() e exibirMetodos().
2. Planta: classe mãe abstrata que define atributos e métodos comuns de todas as
plantas, como nome científico, família, altura e ações como fazerFotossintese() e crescer().
3. PlantaVascular: Uma classe abstrata que herda de Planta e adiciona características de plantas vasculares, como a presença de raiz, caule e folhas, além do método transportarSeivaBruta().
4. Suprimento.php: Classe Abstrata que herda de Produto que define atributos e métodos como aplicar e verificarValidade que serão utilizados em suas classes filhas Adubo e Inseticida.
---> Classes Concretas:
1. Ferramenta: Herda de Produto e define atributos basicos como tipoDeFerramenta, ehManual, material, usoRecomendado e métodos como usarFerramenta.
2. Angiosperma, Gimnosperma e Pteridofitas herdam de PlantaVascular.
3. Briofita herda diretamente de Planta.
4. Adubo e Inseticida herdam de Suprimento.
O sistema opera através de um menu principal no terminal, oferecendo as seguintes opções:
---> 1. Cadastrar Produto:
- Permite registrar um novo produto no sistema. O usuário seleciona o tipo específico de produto e preenche os atributos necessários (nome, preço, características específicas), instanciando a classe correta.
---> 2. Adicionar Estoque:
- Possibilita adicionar unidades a um produto já existente. O usuário seleciona o produto e define a quantidade a ser incrementada ao inventário disponível.
---> 3. Ver Estoque:
- Exibe uma listagem geral de todos os produtos cadastrados, mostrando informações essenciais como o nome (ou identificador), a quantidade disponível e o preço unitário.
---> 4. Vender Produto:
- Realiza a operação de venda. O sistema solicita qual produto será vendido e a quantidade desejada, verifica se há estoque suficiente e, em caso positivo, baixa o estoque.
---> 5. Editar Produto:
- Permite alterar os dados de um produto já cadastrado (como preço ou nome), garantindo que as informações do sistema possam ser corrigidas ou atualizadas sem precisar excluir e recriar o item.
---> 6. Mostrar Detalhes:
- Exibe a ficha técnica completa de um item específico, listando todos os atributos cadastrados, incluindo aqueles herdados das classes mãe e os específicos da classe filha.
---> 7. Mostrar Ações/Métodos:
- Demonstra o Polimorfismo na prática. Ao selecionar um produto, o sistema executa seus métodos comportamentais específicos (ações que aquele tipo de objeto realiza), variando a saída de acordo com a classe do objeto.
---> 8. Relatório de Lucro:
- Exibe o total arrecadado com as vendas realizadas durante a execução do programa ou o lucro estimado com base no estoque movimentado.
---> 0. Sair:
- Encerra a execução do script e do menu interativo.
O projeto aplica os princípios da Programação Orientada a Objetos, sendo eles:
1. Herança:
Utilizada para construir a hierarquia botânica e de suprimentos, garantindo que as classes filhas reutilizem o código das classes-pai.
2. Encapsulamento:
Garante a proteção e integridade dos dados. Todos os atributos críticos (como preço, quantidade e nome) são definidos com visibilidade restrita ("private" ou "protected"). O acesso e a modificação desses dados ocorrem exclusivamente através de métodos públicos **Getters** e **Setters**, permitindo validações antes de alterar o estado do objeto.
3. Abstração:
Utilizado em métodos como calcularPreco(), exibirDetalhes() e aplicar(). Além disso, classes como Produto, Planta e Suprimento são abstratas, servindo como regra obrigatória para que as classes filhas implementem comportamentos específicos.
2. Polimorfismo:
- Cálculo de Preço ("calcularPreco()"): O método possui implementações distintas em cada classe concreta (Angiosperma, Adubo, Ferramenta), aplicando regras de negócio variadas (como taxas ou seguros específicos) sobre o preço base.
- Comportamento ("exibirMetodos()"):* Ao solicitar que um produto exiba suas ações, cada classe executa sua lógica única (ex: uma planta pode "florescer", enquanto um adubo pode "nutrir o solo"), embora a chamada do método seja a mesma para todos.
Selected from shared topics, language and repository description—not editorial ratings.
RafaelCapo /
Projeto desenvolvido na série de vídeos "Criando site em PHP + MVC + CRUD".
65/100 healthgaboliveiradev /
Uma simples interface gráfica desenvolvida para um sorveteria fictícia. Neste projeto eu utilizei C# e adaptei um padrão de projetos conhecido como MVC, muito utilizado em php para o back-end. Este projeto está bem básico ainda, fiz coisas simples, utilizei também o MySql como SGBD. Esse projeto foi desenvolvido para entregar como avaliação para uma das matérias do curso de desenvolvimento de sistema da etec
31/100 healthElMarcelFarias /
Software / Website desenvolvido para um projeto de conclusão de semestre chamado "Situação de Aprendizagem" realizado pela instituição SENAI - Serviço Nacional de Aprendizagem Industrial. Onde demonstramos todo o aprendizado ao longo do semestre na disciplina "Desenvolvimento de Sistemas".
matheusevs /
Projeto realizado em um curso feito na plataforma Udemy, onde tem como objetivo, implementar um sistema de cadastro de chamados. Este projeto tem como nome “Help Desk” e foi desenvolvido utilizando HTML, CSS e para implementar suas funções, foi utilizado PHP. Este sistema possui algumas fucionalidades que foram ensinadas no decorrer do curso, como a validação de login de e-mails já definidos na aplicação e também uma validação especial para o login de adminstrador.
29/100 healthLuke2905 /
Projeto do Trabalho de Conclusão de Curso (TCC). Desenvolvido em grupo na ETEC Juscelino Kubitschek
40/100 healthdev-modesto /
Este site foi desenvolvido no período de 5 aulas, 15/03/2023 a 24/03/2023, para apresentação do 1º Projeto Integrador no curso. OBS: Apresentado na v1.8
31/100 health