{"product_id":"mapa-programacao-de-sistemas-ii-54-2025","title":"MAPA - PROGRAMAÇÃO DE SISTEMAS II 54_2025","description":"\u003cbr\u003e\u003ca href=\"https:\/\/wa.me\/5518981218965?text=Ol%C3%A1!%20Quero%20saber%20mais%20sobre%20esta%20atividade:%20%0A%0A*MAPA%20-%20PROGRAMA%C3%87%C3%83O%20DE%20SISTEMAS%20II*\" target=\"_blank\" style=\"display: inline-block; background: #25D366; color: #fff; padding: 12px 20px; border-radius: 5px; text-decoration: none; font-weight: bold; margin-top: 15px;width:100%;text-align:center\"\u003eClique Aqui e Compre pelo Whatsapp\u003c\/a\u003e\u003cbr\u003e\u003cbr\u003e\u003cdiv style=\"text-align:justify\"\u003eNesta atividade, você construirá um \u003cstrong\u003eSistema de Biblioteca\u003c\/strong\u003e em Java, executado em \u003cstrong\u003econsole\u003c\/strong\u003e, com foco em \u003cstrong\u003eProgramação Orientada a Objetos\u003c\/strong\u003e e \u003cstrong\u003eestruturas de controle\u003c\/strong\u003e. O objetivo é demonstrar seu domínio de \u003cstrong\u003emodelagem\u003c\/strong\u003e, \u003cstrong\u003eencapsulamento\u003c\/strong\u003e, \u003cstrong\u003eherança\u003c\/strong\u003e e \u003cstrong\u003eclasses\/métodos abstratos\u003c\/strong\u003e, além de boas práticas de código, mensagens ao usuário e tratamento de erros. A seguir, você encontrará os requisitos funcionais e o modelo de domínio a serem implementados.\u003cbr\u003e\r\n \u003c\/div\u003e\r\n\r\n\u003cdiv\u003eFonte: Elaborado pelo professor,2025.\u003c\/div\u003e\r\n\r\n\u003cdiv style=\"text-align:justify\"\u003e\n\u003cbr\u003e\r\nImplemente, em Java, um \u003cstrong\u003eSistema de Biblioteca\u003c\/strong\u003e executado em console que permita \u003cstrong\u003ecadastrar, alterar, pesquisar e excluir livros\u003c\/strong\u003e, além de \u003cstrong\u003eregistrar empréstimos e devoluções\u003c\/strong\u003e. A aplicação deve empregar \u003cstrong\u003eOrientação a Objetos\u003c\/strong\u003e (atributos, visibilidade, métodos, classes\/objetos, herança, encapsulamento, métodos estáticos, polimorfismo, classes\/métodos abstratos) e \u003cstrong\u003eestruturas de controle\u003c\/strong\u003e (menu, fluxo condicional, laços contados e variações).\u003cbr\u003e\r\n\u003cbr\u003e\r\n\u003cstrong\u003e1) Requisitos Funcionais (menu e operações)\u003c\/strong\u003e\u003cbr\u003e\r\nImplemente um \u003cstrong\u003emenu em loop\u003c\/strong\u003e até que o usuário escolha “Sair” ou alguma opção semelhante, com as opções:\u003cbr\u003e\r\n\u003cstrong\u003eCadastrar livro\u003c\/strong\u003e\u003cbr\u003e\r\n\u003cstrong\u003eAlterar livro\u003c\/strong\u003e (por ID ou ISBN)\u003cbr\u003e\r\n\u003cstrong\u003ePesquisar livro\u003c\/strong\u003e (por título\/autor\/ISBN)\u003cbr\u003e\r\n\u003cstrong\u003eExcluir livro\u003c\/strong\u003e\u003cbr\u003e\r\n\u003cstrong\u003eListar acervo\u003c\/strong\u003e\u003cbr\u003e\r\n\u003cstrong\u003eEmprestar livro\u003c\/strong\u003e\u003cbr\u003e\r\n\u003cstrong\u003eDevolver livro\u003c\/strong\u003e\u003cbr\u003e\r\n\u003cstrong\u003eSair\u003c\/strong\u003e\u003cbr\u003e\r\n\u003cbr\u003e\r\nO cadastro deve ser armazenado em \u003cstrong\u003eList\u003clivro\u003e\u003c\/livro\u003e\u003c\/strong\u003e em memória.\u003cbr\u003e\r\nPara realizar o empréstimo não há uma forma definida a ser seguida, o desenvolvedor pode criar um List de Empréstimos ou outra forma que desejar, mas deve registrar a situação do livro e não permitir um novo empréstimo sem que a devolução seja realizada.\u003cbr\u003e\r\nEm \u003cstrong\u003eRelatórios\u003c\/strong\u003e, ofereça:\u003cbr\u003e\r\n“Livros disponíveis”\u003cbr\u003e\r\n“Livros emprestados”\u003cbr\u003e\r\n\u003cbr\u003e\r\n\u003cstrong\u003e2) Modelo de Domínio (OO – Parte I e II)\u003c\/strong\u003e\u003cbr\u003e\r\n\u003cstrong\u003e2.1 Classe básicas\u003c\/strong\u003e\u003cbr\u003e\r\nLivro (classe)\u003cbr\u003e\r\n\u003cstrong\u003eAtributos (privados)\u003c\/strong\u003e: id (Long), isbn (String), titulo (String), autor (String), ano (int), categoria (String)\u003cbr\u003e\r\n\u003cstrong\u003eVisibilidade\/métodos\u003c\/strong\u003e: getters\/setters; toString(); \u003cstrong\u003evalidações no setter\u003c\/strong\u003e (ex.: ano positivo; isbn não vazio).\u003cbr\u003e\r\n\u003cstrong\u003e2.2 Herança, classes\/métodos abstratos\u003c\/strong\u003e\u003cbr\u003e\r\nItemBiblioteca (\u003cstrong\u003eclasse abstrata\u003c\/strong\u003e)\u003cbr\u003e\r\nAtributos comuns (ex.: id, título);\u003cbr\u003e\r\nLivro \u003cstrong\u003eestende\u003c\/strong\u003e ItemBiblioteca e \u003cstrong\u003eimplementa\u003c\/strong\u003e calcularMulta (ex.: R$ 1,50 por dia).\u003cbr\u003e\r\n\u003cbr\u003e\r\n\u003cstrong\u003eOrientações\u003c\/strong\u003e:\u003cbr\u003e\r\n\u003cbr\u003e\r\n\u003cstrong\u003e- O código deve ser desenvolvido em Java na IDE de sua preferência e, ao final, copiado e colado no template da atividade MAPA disponibilizado no material da disciplina. Somente o template preenchido deve ser enviado na plataforma, não os arquivos .java separados.\u003c\/strong\u003e\u003cbr\u003e\r\n\u003cbr\u003e\r\n- Antes de enviar sua atividade, certifique-se de que respondeu todas as perguntas da atividade e de que não deixou de atender a nenhum detalhe. Após o envio, não serão permitidas alterações. Por favor, não insista.\u003cbr\u003e\r\n- Sempre que você consultar outros materiais e\/ou conteúdos de terceiros, lembre-se de citá-los corretamente, atribuindo as devidas autorias, bem como inclua as fontes bibliográficas.\u003cbr\u003e\r\n- Evite compartilhar sua resolução com colegas da turma. A expressão do aprendizado é pessoal e única de cada estudante. Preserve sua autoria e evite transtornos na replicação de sua resposta.\u003cbr\u003e\r\n- A interpretação da atividade faz parte da avaliação. Por esse motivo, não são permitidas correções parciais da atividade no decorrer do módulo.\u003cbr\u003e\r\n- Atenção ao PRAZO de entrega da atividade. Sugerimos que envie sua atividade antes do prazo final para evitar transtornos e lentidão nos servidores.\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003ca href=\"https:\/\/wa.me\/5518981218965?text=Ol%C3%A1!%20Quero%20saber%20mais%20sobre%20esta%20atividade:%20%0A%0A*MAPA%20-%20PROGRAMA%C3%87%C3%83O%20DE%20SISTEMAS%20II*\" target=\"_blank\" style=\"display: inline-block; background: #25D366; color: #fff; padding: 12px 20px; border-radius: 5px; text-decoration: none; font-weight: bold; margin-top: 15px;width:100%;text-align:center\"\u003eClique Aqui e Compre pelo Whatsapp\u003c\/a\u003e\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e","brand":"Loja Papiron","offers":[{"title":"Default Title","offer_id":47592561541343,"sku":"nM9mxurFPBsH38XRNjeMho","price":74.9,"currency_code":"BRL","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0747\/5891\/4271\/files\/Logo_Unicesumar_39f04dc3-690f-40eb-8711-41663334d8d6.png?v=1763301533","url":"https:\/\/www.lojapapiron.com.br\/products\/mapa-programacao-de-sistemas-ii-54-2025","provider":"Loja Papiron","version":"1.0","type":"link"}