Entrar

Projeto: Criando um sistema de biblioteca orientado a objetos em Python

Programação em Python

Original Teachy

Orientação a Objetos em Python: Classes, Objetos, Herança e Polimorfismo

Contextualização e Introdução

Introdução

Em um mundo dominado por tecnologia e progamação, entender conceitos básicos de programação é essencial para navegar e contribuir efetivamente para esta sociedade digital. Nesta jornada de aprendizado, um dos tópicos mais importantes que encontramos é a Orientação a Objetos(OO). A OO nos permite estruturar nossos programas de forma intuitiva e eficiente, descrevendo objetos do mundo real em termos de suas propriedades(atributos) e comportamentos(métodos).

Python é uma linguagem orientada a objetos em sua essência. A ideia central da OO em Python gira em torno da criação de código reutilizável, organizá-lo de forma intuitiva e simplificar os processos de design e manutenção. Nas próximas seções, vamos mergulhar nos conceitos fundamentais da OO: Classes, Objetos, Herança e Polimorfismo.

Contextualização

No mundo real, tudo ao nosso redor pode ser considerado um objeto. Cada objeto tem características ou atributos e exibe algum comportamento. Por exemplo, uma bicicleta tem atributos como cor, marca, tipo e exibe comportamentos como frear, acelerar. Da mesma forma, a Orientação a Objetos é um paradigma de programação que permite que modelemos e organizemos nosso software de maneira semelhante à maneira como observamos e interagimos com o mundo real.

A Orientação a Objetos é fundamental em muitas áreas de desenvolvimento de software, desde a criação de interfaces de usuário, ao design de jogos, até o desenvolvimento de aplicações web complexas. É uma habilidade essencial para qualquer aspirante a programador e uma ferramenta indispensável para a maioria dos desenvolvedores de software profissionais.

Materiais Extras para um Aprofundamento

Para complementar o conhecimento, aqui estão alguns materiais recomendados:

  1. Livro: "Python 3 OOP: Análise, Design e Implementação Orientados a Objetos"- Dusty Phillips. [Disponível na Amazon]
  2. Curso Online: "Curso programação orientada a objetos com Python" [Disponível em Udemy]
  3. Artigo: "Orientação a Objetos em Python: um guia prático" [Disponível em DelftStack]

São recursos altamente informativos que fornecem uma visão detalhada e direta de OO. Eles são ótimos pontos de partida para um aprofundamento na Orientação a Objetos Python.

Atividade Prática

Criando um sistema de biblioteca orientado a objetos em Python

Objetivo do projeto

O objetivo deste projeto é fazer com que os alunos apliquem os conceitos de Orientação a Objetos que foram aprendidos em sala de aula. Portanto, os alunos devem criar um sistema de biblioteca simples utilizando Classes, Objetos, Herança e Polimorfismo. Esse sistema contará com detalhes sobre livros presentes na biblioteca, relatórios de livros emprestados e a possibilidade de emprestar ou devolver um livro.

Materiais necessários

  1. Python instalado no computador.
  2. IDE de sua preferência para escrever e testar o código (recomendamos o Jupyter Notebooks ou PyCharm).

Descrição detalhada do projeto

Os grupos de 3 a 5 alunos terão uma semana para criar o sistema de biblioteca. A execução do código deve levar em torno de 2 a 4 horas e deverá ser feita em Python. Eles irão projetar 3 classes básicas: Livro, Usuario e Biblioteca.

A classe Livro deve conter as seguintes propriedades: título do livro, nome do autor e status do livro (emprestado ou disponível).

A Classe Usuario irá incluir propriedades para: nome do usuário, ID do usuário e a lista dos livros atualmente emprestados.

A classe Biblioteca irá implementar a lógica do sistema, incluindo uma lista de todos os livros disponíveis, a lista de todos os usuários e métodos para emprestar e devolver livros.

Os alunos serão encorajados a desenvolver subclasses quando necessário e implementar polimorfismo.

Passo a passo para a realização da atividade

  1. Planejamento e Esboço: Antes de começar a escrever as linhas de código, os alunos devem esboçar e planejar as soluções. Eles devem discutir sobre as propriedades e os comportamentos das classes, bem como possíveis cenários que ocorrerão no sistema de biblioteca.
  2. Implementação da Classe Livro: Comece escrevendo a classe livro. Define os atributos e métodos necessários para ela.
  3. Criação da classe Usuario: Implemente a classe Usuario. Adicione os atributos e crie métodos para emprestar e devolver os livros.
  4. Implementação da Classe Biblioteca: Esta é a classe mais complexa. Além da lista de usuários e livros, também deve incluir métodos para criar novos usuários, adicionar novos livros, emprestar e devolver livros.
  5. Teste o sistema da biblioteca: Antes de finalizar o projeto, testes são essenciais. Os alunos devem criar diferentes cenários para garantir que o sistema funcione corretamente.
  6. Refinando o sistema: Se houver tempo extra, os alunos podem adicionar mais funcionalidades ao sistema, como multas por atraso na entrega do livro.
  7. Produção do relatório do projeto: Finalmente, cada grupo deverá produzir um relatório do projeto com as seções: Introdução, Desenvolvimento, Conclusões e Bibliografia utilizada.

Entregas do projeto e redação do relatório

Ao concluir a parte prática, os alunos precisarão consolidar sua experiência e compreensão em um documento escrito. Aqui estão as diretrizes para os tópicos principais que o relatório deve conter:

  1. Introdução: O aluno deve contextualizar a Orientação a Objetos, sua relevância e aplicação no mundo real, além de descrever os objetivos deste projeto.

  2. Desenvolvimento: O aluno precisa explicar em detalhes a criação do sistema de biblioteca, incluindo os conceitos de Classe, Objeto, Herança e Polimorfismo usados no projeto. Como é que os métodos e as classes se relacionam? Como é que a herança e o polimorfismo foram aplicados? Apresente também resultados de testes do sistema, comentando sobre o papel de cada componente.

  3. Conclusão: Aqui é onde se retomam os pontos principais, os aprendizados obtidos e se fazem reflexões sobre o projeto (por exemplo, mudanças que teriam feito).

  4. Bibliografia: Indique os recursos consultados para realizar o trabalho, como livros, sites, tutoriais em vídeo, etc.

Lembre-se, o objetivo deste projeto é construir um sistema de biblioteca com Python usando OO, além de desenvolver habilidades práticas em programação, resolução de problemas, trabalho em equipe e gerenciamento de projetos.

Comentários mais recentes
Nenhum comentário ainda. Seja o primeiro a comentar!
Iara Tip

DICA DA IARA

Precisa de materiais para apresentar o tema do projeto em sala?

Na plataforma da Teachy você encontra uma série de materiais prontos sobre esse tema! Jogos, slides, atividades, vídeos, planos de aula e muito mais...

Quem viu esse projeto também gostou de...

Community img

Faça parte de uma comunidade de professores direto no seu WhatsApp

Conecte-se com outros professores, receba e compartilhe materiais, dicas, treinamentos, e muito mais!

Teachy logo

Reinventamos a vida dos professores com inteligência artificial

Instagram LogoLinkedIn LogoTwitter LogoYoutube Logo
BR flagUS flagES flagIN flagID flagPH flagVN flagID flagID flag
FR flagMY flagur flagja flagko flagde flagbn flagID flagID flagID flag

2023 - Todos os direitos reservados

Termos de usoAviso de PrivacidadeAviso de Cookies