Este projeto demonstra um sistema simples de gerenciamento de pedidos em Swift, usando o paradigma de Programação Orientada a Objetos (POO) e explorando conceitos como controle de fluxo, coleções, funções e closures, enums e structs, bem como conceitos básicos de concorrência.
Descrição:
Neste projeto, um pedido é representado por uma classe chamada Order
, que possui um identificador, uma lista de produtos e um status (usando o enum OrderStatus
). Produtos são representados por uma struct Product
. A classe Order
contém funções para calcular o preço total dos produtos, bem como para atualizar o status do pedido. O projeto também inclui funções para imprimir os detalhes de um pedido e simula uma atualização de status.
Este projeto é útil para entender como os princípios da POO podem ser aplicados para modelar objetos e suas interações em um contexto do mundo real, como o gerenciamento de pedidos em uma loja online.
Este projeto demonstra um sistema de gerenciamento de tarefas em Swift, usando o paradigma de Programação Orientada a Protocolos (POP) e explorando conceitos como controle de fluxo, coleções, funções e closures, enums e structs, bem como a criação de protocolos para definir comportamentos.
Descrição:
Neste projeto, tarefas são representadas usando protocolos. Existem dois tipos de tarefas: tarefas comuns (implementadas na struct CommonTask
) e tarefas importantes (implementadas na struct ImportantTask
). Ambas as structs aderem ao protocolo Task
, que define um título, uma prioridade e uma função perform()
para executar a tarefa.
O projeto também inclui uma função executeTasks
que executa tarefas de acordo com a prioridade e uma demonstração de filtragem de tarefas por prioridade alta.
Este projeto ilustra como o paradigma de Programação Orientada a Protocolos pode ser usado para criar tipos flexíveis e extensíveis, permitindo a adição fácil de novos tipos de tarefas com comportamentos específicos sem modificar o código existente.