https://github.com/kaoutherbo/library-management-system
A Java-based project for managing a library. Allows adding books and internet resources, showcasing object-oriented programming principles.
https://github.com/kaoutherbo/library-management-system
java java-exercises
Last synced: 5 months ago
JSON representation
A Java-based project for managing a library. Allows adding books and internet resources, showcasing object-oriented programming principles.
- Host: GitHub
- URL: https://github.com/kaoutherbo/library-management-system
- Owner: Kaoutherbo
- Created: 2024-03-04T20:57:07.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-03-18T22:09:04.000Z (almost 2 years ago)
- Last Synced: 2025-05-30T02:42:31.518Z (9 months ago)
- Topics: java, java-exercises
- Language: Java
- Homepage:
- Size: 51.8 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Library Management System 📚
Welcome to the Library Management System! This Java-based project facilitates efficient management of a library, allowing users to add books and internet resources, visualize the library's contents, and practice object-oriented programming principles.
## Table of Contents
- [Description](#description) 📝
- [Features](#features) ✨
- [Exercises](#exercises) 🏋️♂️
- [Classes](#classes) 📚
- [Usage](#usage) 🚀
- [Tools and Languages](#tools-and-languages) 🔧
- [Execution](#execution) 💻
## Description 📝
The Library Management System streamlines the creation and manipulation of documents within a graphical space. It includes classes for books, internet resources, and a library, ensuring seamless document creation, modification, and visualization.
## Features ✨
- **Create Documents**: Generate drawings with multiple rectangles to visualize complex layouts.
- **Add Books and Internet Resources**: Dynamically add books and internet resources to your library.
- **Count Created Documents**: Get insights into the number of documents created in the application.
## Exercises 🏋️♂️
- **Exercise 2**: Implementing encapsulation in the Point class.
- **Exercise 3**: Implementing constructors, Rectangle class, and methods for calculating length, width, and area.
- **Exercise 4**: Consider the Dessin class; a drawing consists of multiple rectangles.
- **Exercise 5**: Test Java method parameter passing by value and reference.
## Classes 📚
- **Document.java**: Represents a document with attributes and methods for document management.
- **Book.java**: Represents a book, extending the Document class, with additional attributes and methods.
- **Internet.java**: Represents an internet resource, extending the Document class, with additional attributes and methods.
- **Library.java**: Represents a library containing an array of documents, with methods for document management.
## Usage 🚀
1. **Clone the Repository**: Clone this repository to your local machine using `git clone https://github.com/Kaoutherbo/Library-Management-System.git`.
2. **Navigate to the Project Directory**: Open a terminal and move into the project directory.
3. **Navigate to the Source Directory**: Change directory to the `src` folder.
4. **Compile and Run**: Compile and run the `Main.java` file.
- Compile: `javac *.java`
- Run: `java Main`
5. **Interact with the Application**: Follow the on-screen instructions to manage the library, add documents, and calculate the total area.
## Tools and Languages 🔧
- **Java**: Primary programming language.
- **IntelliJ IDEA**: Integrated Development Environment (IDE).
## Execution 💻
