Цей посібник описує покроковий процес створення та підключення нового репозиторію FirebaseStudentRepository поруч із існуючим StudentRepository (EF Core) із використанням паттерну Repository та Dependency Injection.
Для роботи з Firebase Realtime Database через Web API встановіть пакет FirebaseDatabase.net.
Модифікувати архітектуру раніше розробленого веб-додатка «Кінопошук» так, щоб доступ до бази даних здійснювався виключно через репозиторій, а не напряму через DbContext.
Це забезпечить слабку зв’язність (low coupling) між шарами додатка, дотримання принципу інверсії залежностей (DIP) та спростить тестування й підтримку коду.
Винести бізнес-логіку та роботу з файлами/БД з MoviesController в окремий сервісний шар
з використанням Dependency Injection та Extension-методів
на основі прикладу https://github.com/sunmeat/aspnetcore_services
Цей набір питань підготовлено для самостійної підготовки студентів до іспиту з C#.
Викладач на іспиті може ставити питання з цього списку, а також будь-які інші питання з предмету.
Мета списку — допомогти студенту в актуалізації своїх знань з предмету.
- Що таке керований (managed) код?
- Що таке некерований (unmanaged) код?
- Яка різниця між керованим (managed) і некерованим (unmanaged) кодом?
- Яка різниця між .NET Framework, .NET Core, .NET Standard?
-
Перенести перше ДЗ "Кінопошук" з Empty на шаблон MVC + до цього:
-
На стартовій сторінці додатка потрібно виводити інформацію про 5-10 найкращих фільмів на ВАШ ОСОБИСТИЙ погляд. Усі дані про фільми мають зберігатися в ідеалі у локальній базі даних SQL Server, АЛЕ! вистачить поки що і 5-10 об'єктів моделі в масиві на рівні оперативної пам'яті.
Для кожного фільму в моделі необхідно зберігати таку інформацію:
- назва фільму
Слайд 1. Назва проєкту, список учасників проєкту, контакти
Слайд 2. Проблема, яку розв’язує проєкт
(чітке формулювання болю/потреби та 1-2 приклади з реального життя)
Слайд 3. Цільова аудиторія / Персони
(1-3 короткі портрети користувачів: хто, скільки років, де використовуватиме, кому це потрібно)
Слайд 4. Архітектура проєкту
(перелік класів, використані патерни проєктування, можливо є бекенд тощо)
- Створити файл
.envу корені проєкту (на одному рівні з index.html!!!) - Перенести туди всі API ключі та базові URL.
- Додати префікс
VITE_до всіх змінних. - Оновити код, щоб використовувати
const API_URL = import.meta.env.VITE_API_URL;. - Додати
.envдо.gitignore(тоді цей файл залишиться тільки у вас локально, а на render.com можна буде вказати змінні середовища при деплої проєкту)
Тема: Робота зі стандартним контейнером std::set
Завдання: Міні-БД обліку автомобілів (на рівні оперативної пам'яті, без SQL Server =))
Вам потрібно розробити просту міні-базу даних в оперативній пам’яті для зберігання інформації про автомобілі.
Ключем є номер автомобіля (унікальний!), значенням — власник автомобіля.
Обов’язкова вимога: Використовувати саме контейнер std::set (не std::map і не std::unordered_set).