Програмне забезпечення веб сайту для обміну повідомленнями в режимі реального часу з підтримкою основних функцій мессенджера - Дударенко, Нікіта Іванович (НУБіП України, 2025)
У сучасному світі комунікаційні застосунки є важливою частиною повсякденного життя — як у особистому, так і в професійному плані. Користувачам потрібні швидка доставка повідомлень, надійний обмін інформацією, можливість керувати списком контактів і знати, хто є онлайн. Це створює потребу в рішеннях для інтеграції обміну повідомленнями у системи підприємств або в застосунки, доступні для обмеженого кола користувачів. Зокрема, потреба виникає у веб-застосунках обміну повідомленнями, які не вимагають встановлення додатка, завдяки чому доступ до ними є легким та кросплатформеним. Ще одним важливим питанням є надійне керування доступом, яке необхідне для підтримки приватності користувачів та захисту даних. Це робить створення кастомного рішення для обміну повідомленнями важливим завданням, яке дозволяє реалізувати специфічні вимоги. Мета розробки — створення сучасного веб-застосунку для обміну повідомленнями, який підтримуватиме основний функціонал типової системи обміну повідомленнями: можливість авторизуватись, реєструватись, створювати приватні й групові чати, писати текстові повідомлення, переглядати профілі користувачів, змінювати налаштування облікового запису тощо. Програмне рішення має забезпечити: відгук на дії користувача у реальному часі за допомогою WebSocket-з’єднань (SignalR); безпечне збереження даних з використанням сучасної ORM (Entity Framework + PostgreSQL); можливість масштабування у майбутньому; інтуїтивно зрозумілий інтерфейс без надмірної складності. Завдяки застосуванню Blazor Server користувач отримує відчуття роботи з настільним додатком при збереженні усіх переваг веб-архітектури. Розробка програмного забезпечення виконувалася із використанням сучасного стеку технологій, орієнтованого на створення продуктивного, безпечного та зручного у використанні веб-додатку. Як платформа клієнт-сервера була використана Blazor Server, що в практиці реалізовує динамічні інтерфейси за допомогою C# з найменшою можливістю використання JavaScript. SignalR бібліотека допомагає обміну даними в реальному часі, завдяки чому учасники чата отримують повідомлення миттєво. Для доступу до бази даних було вибрано ORM Entity Framework Core, який працює у поєднанні з PostgreSQL через Npgsql — офіційний драйвер. Користувачам мається можливістю використовувати кращий підхід за допомогою DbContext для пошуку даних і таким чином зберігати чисту структуру коду (clean architecture) проекту. Де зберігається інформація — це про користувачів, чати, повідомлення та інші дані, які пов’язані з автентифікацією. Через інтегровану систему ASP.NET Core Identity, в процесі мають змогу працювати з вторизованими користувачами, тобто одночасно реєстрація, авторизація, підтвердження електронної пошти, зміна паролю, інші операції веб контролю належать обліковим записам користувачів. Реалізація інтерфейсної частини продукту виконана за допомогою Bootstrap and CSS-стилів, що дозволяє адаптивність інтерфейсу та захищає комфортність користувача. Усі вибрані технології поєднуються та надають ефективну роботу системи, її надійність, масштабованість.
Keywords: веб-застосунки; обмін повідомленнями; програмне забезпечення; платформа клієнт-сервера; web applications; messaging; software; client-server platform