Как я написал своё первое десктопное приложение на Qt — таймер перерывов Break Time
Всем привет! Меня зовут @y3nox, и я хочу рассказать о своём первом опыте написания полноценного десктопного приложения на Qt.Проект называется Break Time, и его задача — помогать делать перерывы во время работы за компьютером.
Я всегда хотел попробовать реализовать что-то полезное, пусть и небольшое, и наконец решился. Возможно, мой опыт будет полезен новичкам, которые только начинают путь в разработке.
Возможно, эта статья будет полезна новичкам, которые только начинают работать с Qt или ищут идею для первого проекта.
📌 Что такое Break Time?
Break Time — это минималистичное приложение, в котором можно настроить рабочее время и длительность перерывов. Программа подаёт звуковые уведомления, отображает таймеры и, самое главное — не даст закрыть окно во время перерыва (даже Alt+F4 не поможет).
📷 Интерфейс
📌 Почему я решил написать именно такую программу?
Я, как и многие, увлекаюсь работой и могу легко просидеть за компьютером весь день. Однажды, ещё когда учился, провёл за экраном 18 часов без нормальных пауз — с тех пор стараюсь следить за режимом.
Готовые решения показались либо перегруженными, либо неудобными.Так появилась идея написать своё — простое, лёгкое и с нужным мне набором функций.
📌 Какие технологии использовал
- Qt 6.7 (C++) — для интерфейса и таймеров
- QSoundEffect — для звуковых оповещений
- Qt Creator — для сборки и отладки
📌 Основной функционал
- Выбор количества перерывов
- Таймер рабочего времени
- Таймер перерыва
- Звуковые уведомления (за 5 секунд до начала перерыва и за 5 секунд до окончания перерыва)
- Жёсткий режим — во время перерыва окно нельзя закрыть
📌 Что получилось хорошо
✅ Разобрался с основами работы Qt✅ Сделал рабочее приложение с минимальным набором функций✅ Первый опыт выкладки проекта на GitHub✅ Начал оформлять README.md, Changelog и планы на обновления
📌 Что можно было сделать лучше
❌ Пока нет возможности откладывать или отменять перерыв❌ Не реализован лог сессий❌ Нет горячих клавиш и автозапуска
Эти функции я запланировал на следующие обновления.
📌 Чему я научился
- Организовывать проект на Qt.
- Работать с таймерами и окнами.
- Настраивать звуковые оповещения.
- Загружать проекты на GitHub.
- Оформлять документацию проекта.
📌 Планы на будущее
- Добавить возможность откладывать перерыв.
- Логировать рабочие сессии.
- Поддержка горячих клавиш.
- Реализовать автозапуск.
📌 Где посмотреть проект
Репозиторий доступен на GitHub:👉 https://github.com/F3lixxx/BreakTime
📌 Заключение
Этот проект стал для меня первым серьёзным опытом, и я рад, что довёл его до рабочего состояния.Если кто-то ищет идею для своего первого Qt-приложения — рекомендую начать с чего-то простого и полезного.
Буду рад любой обратной связи или предложениям по улучшению!
Связь со мной:
- Telegram: @y3nox
- Email: y3nohx@gmail.com
📌 P.S.
Кстати, сейчас я в поиске работы или стажировки на позицию начинающего C++ / Qt разработчика.Если вам интересен мой опыт или проект — буду рад пообщаться!