Первый проект по ООП на Python
LibraryApp — простая система управления библиотекой с использованием принципов ООП и абстракций.
- Добавление книг в библиотеку
- Поиск книг:
- по названию
- по жанру
- по типу (книга, eBook, аудиокнига)
- Покупка книг пользователями
- Разные типы пользователей:
- Admin — управление библиотекой
- Reader — просмотр и покупка книг
- Сохранение данных в файлы (
.txt)
app.py— основной файл для запуска и тестированияstorage.py— классы для работы с файлами (Storage_libr, Storage_users)models.py— Book, User, Admin, Reader, Typeslibrary_core.py— класс Library и логика добавления/удаления книгsearch.py— стратегия поиска книг (Strategy Pattern)library_2.txt— пример данных книгlist_admins.txt— пример списка админовlist_users.txt— пример списка пользователей
- Python 3.10
- OOP (классы, наследование, абстрактные классы)
- Enum, статические и класс методы
- Работа с файлами
- Паттерн Strategy для поиска
from storage import Storage_libr, Storage_users
from models import Book, Reader, Types
from library_core import Library
from search import TitleSearch
# Создание хранилища
storage_books = Storage_libr("library_2.txt")
library = Library(storage_books)
# Создание пользователя
storage_users = Storage_users()
user = Reader("John Patrik", storage_users)
# Покупка книги
result = user.buy("harry potter 1", 2, library)
print(result)
# Поиск книги
line = TitleSearch.search("harry potter 1", library)
print(line)