Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hafiz1379/oop-school-library
Discover the OOP School Library, a Ruby-powered app for efficient book and borrower management. Over a week, build classes for students, teachers, and books, create associations, add a simple user interface, refactor code, ensure data persistence, and implement unit tests. A practical example of object-oriented programming in action.
https://github.com/hafiz1379/oop-school-library
rspec ruby rubygems testing
Last synced: 20 days ago
JSON representation
Discover the OOP School Library, a Ruby-powered app for efficient book and borrower management. Over a week, build classes for students, teachers, and books, create associations, add a simple user interface, refactor code, ensure data persistence, and implement unit tests. A practical example of object-oriented programming in action.
- Host: GitHub
- URL: https://github.com/hafiz1379/oop-school-library
- Owner: hafiz1379
- License: mit
- Created: 2023-10-02T13:02:50.000Z (over 1 year ago)
- Default Branch: dev
- Last Pushed: 2023-10-11T14:59:55.000Z (over 1 year ago)
- Last Synced: 2025-01-11T18:39:15.584Z (22 days ago)
- Topics: rspec, ruby, rubygems, testing
- Language: Ruby
- Homepage:
- Size: 60.5 KB
- Stars: 8
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 📗 Table of Contents
- [📖 About the Project](#about-project)
- [🛠 Built With](#built-with)
- [Tech Stack](#tech-stack)
- [Key Features](#key-features)
- [💻 Getting Started](#getting-started)
- [Setup](#setup)
- [Prerequisites](#prerequisites)
- [Install](#install)
- [Usage](#usage)
- [Run tests](#run-tests)
- [Deployment](#triangular_flag_on_post-deployment)
- [👥 Authors](#authors)
- [🔭 Future Features](#future-features)
- [🤝 Contributing](#contributing)
- [⭐️ Show your support](#support)
- [🙏 Acknowledgements](#acknowledgements)
- [📝 License](#license)**OOP school library**
This project focused on building a Ruby school library app. Key achievements include:
1- Implemented three classes: Person, Student, and Teacher.
2- Utilized encapsulation and inheritance principles.
3- Enabled command-line program execution.
4- Followed Ruby best practices for code quality and documentation.This foundational work sets the stage for future app development and functionality expansion.
Ruby
- **[Class Hierarchy: Implemented a hierarchy of classes including Person, Student, and Teacher for modeling individuals in a school setting.]**
- **[Encapsulation and Inheritance: Demonstrated mastery of object-oriented principles by encapsulating data and behaviors and using inheritance to share common attributes.]**
- **[Command-Line Execution: Enabled the program to be executed directly from the command line, enhancing accessibility and usability.]**
To get a local copy up and running, follow these steps.
### Prerequisites
In order to run this project you need:
### Setup
Clone this repository to your desired folder:
### Prerequisites
In order to run this project you need:
- Install [Ruby](https://www.ruby-lang.org/en/documentation/installation/).
- Create a repo on your repositores files.
- Clone or make a copy of this repo on your local machine.
- Follow GitHub flow.
- A carefully reading of this README.md is required.
### Setup
Clone this repository to your desired folder:
```sh
cd my-folder
git clone https://github.com/hafiz1379/OOP_school_library
```
### Install
Install this project with:
```sh
bundle install
```
### Usage
To run the project, run the following command:
```sh
ruby test.rb
```
### Run tests
To run tests, run the following command:
```
rubocop
```
👤 **Hafizullah Rasa**
- GitHub: [@githubhandle](https://github.com/hafiz1379)
- Twitter: [@twitterhandle](https://twitter.com/Hafizrasa1379?s=35)
- LinkedIn: [LinkedIn](https://www.linkedin.com/in/hafizullah-rasa-8436a1257/)
👨🏼🚀 **Juan Diego Guerra (JD)** 👾
- GitHub: [@JuanDiegoGuerra](https://github.com/JuanDiegoGuerra)
- LinkedIn: [Juan Guerra](https://www.linkedin.com/in/juan-guerra-65076b1ba/)
- **[map Method]**
- **[reduce Method]**
- **[sort Method]**
Contributions, issues, and feature requests are welcome!
Feel free to check the [issues page](../../issues/).
If you like this project, star the project if you like it
I would like to thank my mentor and my cod partners for support
This project is [MIT](./LICENSE) licensed.