Потрібно доопрацювати існуючу десктопну програму на Python (близько 9000 рядків коду).
Програма вже працює та має графічний інтерфейс. Використовуються:
- Python 3
- Selenium
- Tkinter / CustomTkinter
- SQLite
- asyncio
- requests
- Telegram Bot API
Проєкт не потребує розробки “з нуля”. Необхідно розібратися в існуючому коді та внести зміни.
Причина доопрацювання
Після оновлення платформи X (Twitter) змінився інтерфейс і логіка роботи чатів.
У результаті частина функціоналу, пов’язана з роботою чатів, більше не працює або працює некоректно.
Необхідно адаптувати програму до нової версії інтерфейсу.
Що потрібно зробити
1. Аналіз існуючого проєкту
Необхідно:
- вивчити структуру програми;
- знайти всі модулі, що відповідають за роботу з чатами;
- визначити залежності між ними;
- скласти план внесення змін.
2. Доопрацювання функціоналу
Потрібно адаптувати програму до нового інтерфейсу чатів X.
Зокрема, реалізувати коректну роботу:
- відкриття списку чатів;
- відкриття конкретного чату;
- визначення активного чату;
- отримання нових повідомлень;
- надсилання повідомлень;
- роботи з груповими чатами;
- обробки помилок та нестандартних ситуацій.
3. Зберегти існуючу логіку програми
Під час виконання робіт необхідно:
- не порушити роботу графічного інтерфейсу;
- не змінити існуючу логіку інших модулів;
- зберегти сумісність із базою даних SQLite;
- зберегти існуючу систему налаштувань;
- мінімізувати кількість змін у коді.
4. Вимоги до коду
Код має бути:
- зрозумілим;
- структурованим;
- без дублювання;
- сумісним із поточною архітектурою проєкту.
5. Перевірка
Після завершення роботи необхідно:
- перевірити запуск програми;
- переконатися у відсутності помилок;
- протестувати реалізований функціонал.
Що буде надано
Виконавцю буде надано:
- вихідний код програми;
- опис поточного функціоналу;
- інформацію щодо проблемних місць;
- тестові дані (за потреби).
Буде перевагою досвід роботи з автоматизацією вебінтерфейсів та рефакторингом існуючого коду.