Prática sobre funções: Desafios e Aprendizagens




Se você já se perguntou como um simples programa pode transformar a gestão de uma pequena loja, ou se está pensando em embarcar em um projeto de software, você está no lugar certo! Vamos dar uma olhada no desafio prático 1 e explorar o que a equipe Gates aprendeu ao criar um sistema para gerenciar as vendas diárias de uma loja.


O Desafio

A missão era desenvolver um programa que facilitasse o gerenciamento das vendas de uma pequena loja. As principais funcionalidades exigidas eram:

  1. Registrar e Listar Vendas Diárias: O programa deveria permitir a inserção dos itens vendidos, a quantidade e o valor unitário.
  2. Calcular o Valor Total de Vendas: Somar todos os valores das vendas para obter o total do dia.
  3. Calcular a Média de Vendas: Encontrar a média das vendas diárias para avaliar o desempenho.
  4. Identificar a Maior Venda: Mostrar o valor da maior venda registrada.
  5. Determinar o Item Mais Vendido: Descobrir qual item foi vendido em maior quantidade.

Durante o desenvolvimento

Assim que iniciamos o projeto, começamos com uma discussão sobre a abordagem a ser adotada com base nos requisitos estabelecidos. Um dos pontos principais debatidos foi se deveríamos usar uma lista de produtos pré-definidos ou permitir que os itens fossem inseridos individualmente pelo usuário. Para explorar essas opções, dividimos nossa equipe em dois grupos de trabalho. O primeiro grupo ficou encarregado de desenvolver um programa que utilizava uma lista fixa de produtos já pré-definidos. O segundo grupo, por sua vez, se concentrou na criação de um programa que permitia a inserção e o gerenciamento de itens de forma dinâmica, ou seja, do zero.

À medida que avançávamos no desenvolvimento do primeiro programa, percebemos que a abordagem que permitia ao dono da loja adicionar e gerenciar os itens conforme necessário oferecia maior flexibilidade e potencial de personalização. Com base nessa constatação, decidimos focar nossos esforços na continuação e aprimoramento do segundo programa, que agora se tornou o único projeto em andamento.

Para garantir a melhor solução possível, dividimos o desenvolvimento do segundo programa em três versões distintas, cada uma com suas próprias melhorias e refinamentos. Após testar e revisar cada uma das versões, optamos pela versão com o código mais limpo e legível, que facilitava a manutenção e a compreensão do sistema. A decisão final sobre qual versão adotar foi unânime entre os membros da equipe, refletindo o consenso sobre a qualidade e a eficácia da escolha.


Visão Geral do Código: Como o Programa Funciona

- Função menu()

Esta função exibe o menu principal para o usuário, apresentando as opções disponíveis para interagir com o programa. É uma função simples que apenas imprime uma lista de opções. 

Função "adicionar(vendas)"

Permite ao usuário adicionar uma venda ao registro. A função recebe um dicionário vendas e adiciona ou atualiza uma entrada com o nome do item, a quantidade vendida e o valor unitário. Os dados são armazenados como uma lista contendo a quantidade e o valor unitário do item. 

Função "lista(vendas)"

Exibe todas as vendas registradas. Para cada item no dicionário vendas, a função imprime a quantidade vendida e o valor unitário. A formatação garante que os valores sejam exibidos com duas casas decimais.

Função valor_total(vendas)

Calcula e exibe o valor total das vendas. A função percorre todas as entradas no dicionário vendas, calcula o valor total para cada item e soma esses valores para obter o total geral. 

Função "media_total(vendas)"

Calcula e exibe a média de vendas. A função soma a quantidade total de itens vendidos e o valor total das vendas, depois calcula a média dividindo o valor total pela quantidade total.

Função "maior_venda(vendas)"

Identifica e exibe a maior venda. A função calcula o valor total para cada item e compara com o maior valor encontrado até o momento. No final, imprime o item com a maior venda e seu valor.

Função "item_mais_vendido(vendas)"

Identifica e exibe o item mais vendido. A função compara a quantidade vendida de cada item e mantém o item com a maior quantidade vendida. No final, imprime o item mais vendido e a quantidade.

Loop Principal 

O loop principal mantém o programa em execução contínua, permitindo ao usuário escolher opções do menu e executar as funções correspondentes. Utiliza a nova sintaxe match-case para a seleção de opções, onde cada opção chama a função apropriada baseada na escolha do usuário.


Conclusão

Desenvolver um programa para gerenciar as vendas de uma loja pequena foi uma jornada rica em aprendizados e desafios. A equipe não apenas aprimorou suas habilidades técnicas, como também entendeu a importância de um planejamento cuidadoso e uma execução meticulosa. Se você está considerando criar um projeto de software, essas lições podem ser extremamente valiosas para seu sucesso!

Fique atento para mais insights e dicas sobre desenvolvimento de software e gerenciamento de projetos. Se você já enfrentou desafios semelhantes ou tem perguntas, compartilhe suas experiências nos comentários!



Samah Ely Sampaio

Sou estudante de Ciência da Computação pela UniNorte e apaixonada por tecnologia, automação e dados. Com uma experiência enriquecedora como bolsista em Hyperautomation pelo IFAM, em parceria com a LG, tenho me aprofundado em desenvolver soluções práticas que otimizam processos e facilitam a análise de dados, sempre buscando a inovação e a eficiência. Aqui no blog, compartilho insights da minha trajetória acadêmica e profissional, dicas de tecnologia e as minhas descobertas no universo da programação.

Postar um comentário

Postagem Anterior Próxima Postagem