Как я написал своё первое десктопное приложение на 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 разработчика.Если вам интересен мой опыт или проект — буду рад пообщаться!

2 комментария