Search
Write a publication
Pull to refresh

Comments 16

Отличная штука, ты молодец, продолжай в том же духе!

ну во первых это просто GUI "для генерации QR-кодов через segno"

Во вторых, где хотя бы requirements.txt что бы самому проинсталлировать и пользоваться.

Во третьих, стоит все же убрать google credentials.

хороший проект, тем более для такого возраста. дальше — больше. уже с ранних лет пилишь пет-проект, выкладываешь на гитхаб и публикуешь статью на хабре. лично я считаю, что это уже достижение

возможно прилетят синьоры-помидоры, которые кидаются грязью, но ты их не слушай, если не конструктивная критика.

а насчет проекта. спроса именно на твой проект не будет велик, поэтому если ты рассчитывал на какой-то поток дохода, то его скорее не будет.

П.С. сайт тоже прикольный. малой уже разбирается в лэндинг-маркетинге. желаю только удачи!

Люблю питон, не смог пройти мимо. Очень хороший код, структурированный, удобный для пользователя и расширяемый.

Что сказать про плюсы:

Гибкая архитектура: код разбит на логические модули (QR, HistoryManager, диалоги), что упрощает масштабирование и сопровождение.

Система истории: реализовано сохранение данных и стилей для повторного использования.

Стилизация интерфейса: оформлено в виде CSS-стилей (QSS), что делает UI современным и чистым.

Обработка ошибок: почти все действия обернуты в try-except, ошибки отображаются пользователю через QMessageBox.

Проверка зависимостей при старте: предотвращает запуск без нужных модулей.

Режимы генерации QR-кодов: поддержка разных сценариев (телефон, SMS, WiFi, изображение и др.).

Проверка наличия директорий перед запуском (qrs, files, crypto_keys).

Что можно было бы улучшить:

  • В __prepare_data есть повторяющийся блок для Email:

elif self.current_type == 2:  # Email
    ...
elif self.current_type == 2:  # Email
    ...

Удали один блок.

  • is_big в __upd_radio__

self.current_style["is_big"] = not (radio_check_1 and not radio_check_2)

Это запутанная логика. Гораздо понятнее:

self.current_style["is_big"] = self.ui.radioButton_2.isChecked()
  • Методы вроде make_qr() или set_style() выполняют и: подготовку данных, вызов генератора, стилизацию, и UI-отображение. Можно разделить бизнес-логику и GUI, чтобы упростить тестирование и повторное использование.

  • Повтор self.__upd_list__() в make_qrВызывается каждый раз перед генерацией QR, хотя логически это должно происходить при смене типа, а не при генерации. Это может запутать.

  • Жёстко зашитые пути

f"C:\\Users\\{user}\\Documents\\MyQR.png"

Лучше использовать os.path.join(os.path.expanduser("~"), "Documents", "MyQR.png")

  • Можно добавить минимальные unit-тесты для HistoryManager, QR, и отдельных функций.

Вы бот/использовали чатгпт, да?

Обидно немного. Но каюсь, использовал его чтобы структурировать ответ. Так как, чукча, как говорится, может и писатель но так себе. А вот проектик то поковырял и не только чтобы пальцем, во внутряночку глянул

Извините, если обидно, просто немного мозоль кровит от этих ии оборотов речи. Ничего личного:)

та блин, а че лучше чтоль мое косноязычие читать?)) ахаха. Первый пост и предыдущий если сравнить, первый мне нравится больше

И буква ё еще выдает нейро-тексты.

Классный пет-проект, удачи тебе в дальнейших начинаниях!

Наконец-то офлайн приложение! Спасибо

Онлайн сервисы не устраивали. Тестировал ПО на ПК, но все были плохи

Рекомендую в заголовок добавить «…для ПК» — для улучшения SEO поиска

Очень крутой проект, с учётом возраста разработчика.

Пара мелких придирок.

Комментарии лучше писать по-английски. Иначе придет иностранный человек, захочет закинуть PR и не сможет разобраться. PR-ы от незнакомцев очень ценны, они означают, что проект обрастает своим сообществом (а автор проекта - лидер этого сообщества). Их надо всячески привечать (но не в ущерб качеству кода, приносимого незнакомцами).

Сами по себе коментарии должны отвечать на вопрос "что?" (что делает это место кода?). И, иногда, "зачем?" и "почему?". На вопрос "как?" отвечает сам код.

Есть некоторые вопросы.

Ромбики/кружочки, представленные на оф. сайте, читаются QR сканнерами? Просто есть некоторые подозрения, что не факт.

В плане редактирования стилей сильно не хватает возможности добавить по центру логотип или просто вырез под него.

Приложение неплохое. Поддержка мобильных устпройств была бы кстати.

Sign up to leave a comment.

Articles