Giter VIP home page Giter VIP logo

library_app's Introduction

๐Ÿ“š library ๐Ÿ“š

requirements

  • provide a menu-driven console-based user interface. implementation details are up to you
  • employ layered architecture and classes
  • have at least 20 procedurally generated items in your application at startup
  • provide specifications and pyunit test cases for all non-UI classes and methods for the first functionality
  • implement and use your own exception classes.

problem statement

write an application for a book library. the application will store:

  • book: book_id, title, author
  • client: client_id, name
  • rental: rental_id, book_id, client_id, rented_date, returned_date

Screenshot from 2023-12-04 10-15-37

create an application to:

  1. manage clients and books. the user can add, remove, update, and list both clients and books.

Screenshot from 2023-12-04 10-16-03

  1. rent or return a book. a client can rent an available book. a client can return a rented book at any time. only available books (those which are not currently rented) can be rented.

Screenshot from 2023-12-04 10-16-17

  1. search for clients or books using any one of their fields (e.g. books can be searched for using id, title or author). the search must work using case-insensitive, partial string matching, and must return all matching items.

Screenshot from 2023-12-04 10-16-36

  1. create statistics:
    • most rented books. this will provide the list of books, sorted in descending order of the number of times they were rented.
    • most active clients. this will provide the list of clients, sorted in descending order of the number of book rental days they have (e.g. having 2 rented books for 3 days each counts as 2 x 3 = 6 days).
    • most rented author. this provides the list of book authors, sorted in descending order of the number of rentals their books have.

Screenshot from 2023-12-04 10-16-54

library_app's People

Contributors

sorecauadrian avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.