Задать вопрос
Пользователь пока ничего не рассказал о себе

Достижения

Все достижения (21)

Наибольший вклад в теги

Все теги (90)

Лучшие ответы пользователя

Все ответы (128)
  • Разработка Qt - структура Qt-приложения.?

    @tugo
    Посмотрите это видео. Вот так, для начала, должна выглядеть структура вашего приложения.
    1. Для построения графического интерфейса пользуйтесь Qt Designer (а не размещая врукопашную виджеты, как это делаете вы).
    2. В первом, самом простом приложении, должно быть 4 файла исходных кодов.
    main.cpp
    MainWindow.h
    MainWindow.cpp
    MainWindow.ui
    // MainWindow.h
    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    
    public:
        explicit MainWindow(QWidget * parent = 0);
        ~MainWindow();
    
    signals:
    
    protected:
    
    private:
        Ui::MainWindow * ui;
    };


    3. Если количество элементов в MainWindow становится слишком большим, выделяйте элементы в отдельные классы, наследники класса QWidget.
    Допустим, у вас в MainWindow расположен элемент Tab Widget, в котором 2 вкладки.
    Логично вынести логику работы элементов в каждой вкладке в свой класс, т.е. у вас в проекте должно появиться еще 6 файлов:
    MyTabWidget1.h
    MyTabWidget1.cpp
    MyTabWidget1.ui

    MyTabWidget2.h
    MyTabWidget2.cpp
    MyTabWidget2.ui

    // MyTabWidget1.h
    #pragma once
    
    #include <QWidget>
    
    namespace Ui {
    class MyTabWidget1;
    }
    
    class MyTabWidget1: public QWidget
    {
        Q_OBJECT
    
    public:
        explicit MyTabWidget1(QWidget * parent = 0);
        ~MyTabWidget1();
    
    private:
        Ui::MyTabWidget1* ui;
    };


    В классе MainWindow используются объекты классов MyTabWidget1 и MyTabWidget2.
    Логика работы MainWindow резко похудеет, все перенесется в MyTabWidget1 и MyTabWidget2.

    4. Дальше. Избегайте реализации логики работы класса GUI. Эти классы (MyTabWidget1 и MyTabWidget2, MainWindow) должны быть простыми прокладками, трансляторами сигналов от пользователя в логику работы приложения и визуализаторами состояния приложения пользователю.
    Начинаете логику работы приложения реализовывать в отдельном классе.
    Обмен информацией между Logic <--> MainWindow возложите на сигналы-слоты.
    Ответ написан
    Комментировать
  • Как программисты следят здоровьем глаз, зрения или позвоночника?

    @tugo
    Сухость глаз

    1. Увлажняющие капли.
    2. Влажность воздуха в помещении выше 40%. Влияние этого фактора, думаю, не так велико, т.к. сухость глаз из-за того, что меньше моргаем при работе за ПК.

    Врачи у нас тупые(буквально). Три раза их посетил, но каждый врач написал разное лечения на одни и те же проблемы. Не знают чем мне помочь.

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

    Тогда я поехал в город и там в частной клинике мне прописали совсем другое лечение, сказали что срочно нужна лазерная операция, что если бы я доверился прежним врачам и не обследовался у них - я мог бы потерять зрение. Заплатили там 20 000 руб. Ну там уже был другой уровень у врача - это было видно.

    При посещении врача делаю поправку на то место, где его посещаю.
    1. Бесплатный врач (поликлиника по ОМС). Предполагаю, что если ты не умираешь, послать тебя подальше или в крайнем случае назначить диагностику подешевле (рентген вместо МРТ), запись через 3 месяца (авось не придешь или само вылечится). Т.е. у них не стоит задача прямо близко к сердцу принять твое здоровье и бороться за него. Это в среднем. Может повезти и попадешь на небезразличного врача.
    2. Платная поликлиника (ДМС или за деньги). Тут у них может стоять задача прогнать тебя по всевозможным анализам (вытянуть деньги у стразовой или у тебя, но из страховой сложновато тянуть). Особенно, если исследования и врачи прямо в этой поликлинике.

    Наибольшее доверие вызывает врач, который говорит, что ему все равно, где ты сделаешь исследование, сдашь кровь и т.д. Просто нужны такие и такие исследования.

    Это просто лирика, не ставлю под сомнение нужность лазерной операции для вас.

    но пришли уже новые, иногда возникает такое чувство будто бы в глазу колит. Цвет глаз такой же неважный.

    Вам бы к еще одному врачу, другому. Со всеми заключениями предыдущих врачей. Да, дорого. Да, можно после 3-4-5 врача прийти к диагнозу - "неопасная фигня, на здоровье не влияет".

    НО, он мне сказал, что перерывы я должен делать КАЖДЫЕ 20 минут работы перед компом НА 20 минут ОТДЫХА.

    Впервые вижу такое жесткое ограничение. Но, возможно, так нужно. Обычные требования при работе за ПК - 45-50 минут работы, 10-15 минут отдых. Но это для здоровых людей.
    Просто представьте, что вы пренебрегаете рекомендациями, убиваете свое зрение и достигаете через 3-5 лет хорошего уровня в своей области. Но зрение уже всё. Дальше что? Как работать и зашибать бабло? Вынужденно менять работу?

    Это же издевательство. За 20 минут наш мозг даже не успевает сосредоточиться на работе! (есть такое исследование)

    А вы попробуйте из интереса. Поставьте таймер и поработайте неделю в таком режиме. И посмотрите результаты.
    Думаю, что глаза у вас будут отдыхать, а мозг не переставать работать.

    Как программисты следят здоровьем глаз, зрения или позвоночника?

    1. Подбирают правильную коррекцию зрения.
    2. Занимаются физическими упражнениями. Гуляют по часу в день.
    Я ненавижу упражнения и не всегда хочу гулять. Мне под 40 и организм сказал "хватит". Стараюсь гулять и ходить в зал.
    3. Подбирают хороший монитор. Как можно больше и дальше от себя. Без ШИМ подсветки. С минимальной комфортной яркостью. Возможно, стоит почитать про телевизор в качестве монитора.
    У меня Dell U2312HM, 9 лет, яркость выкручена в 0. Думал всё, надолго, пока не сломается. Ан нет, говорят, что 4k мониторы не блажь, а полезная вещь для глаз.
    4. Не работают больше 40 часов в неделю, в выходные не работают. К 40 годам ощущаешь, как переработки очень влияют на продуктивность. Плохое самочувствие от переработок не включается резко в 40 лет - оно и в 25 плохо действует, просто запасов организма пока хватает.
    Ответ написан
    Комментировать
  • Что означают просто { тут блок кода } в с++?

    @tugo
    Пользуются свойствами блока кода:
    1. создается новая область видимости
    2. объект, созданный внутри блока кода, удалится по завершению (т.е вызовется деструктор). В сочетании с RAII иногда удобно.

    // Когда не хочется придумывать новое имя другой переменной, которая точно такая же по смыслу.
    // И хочется дать ей константность - ее менять я не собираюсь, в смысле изменчивости переменной.
    const bool ok = foo1();
    if (!ok)
        return;
    {
        const bool ok = foo2();
        if (!ok)
            return;
    }


    // Когда надо защитить мьютексом изменение переменной, на как можно более короткое время.
    ...  некий код
    {
        const std::lock_guard<std::mutex> lock(_mutex);
        ++i;
        // _mutex is automatically released when lock goes out of scope
    }
    ... продолжаем код


    Или замерить время выполнения части кода. Создаем объект, в конструкторе которого захватываем текущее время, в деструкторе выводим затраченное время в лог.
    Ответ написан
    Комментировать
  • Сколько взять за разработку электронной платы, прошивку, производство и её поддержку?

    @tugo
    Не меньше 10 тыр. За тестовый экземпляр. Надо бы на плату посмотреть.
    Важен баланс - мало возьмешь, уважать не будут и ценить, много - могут отказаться.
    Но если заказов минимум, а с конторой завязаться хочется....

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

    Считаю стоимость разработки так.
    Прикидываю желаемую зарплату (реальную) за сколько бы я занимался на постоянке. Умножаю на время разработки.
    И умножаю на 2. Хотя бы из тех соображений, что вы выступаете как индивидуальный предприниматель и все риски несете вы. Заболеете, никто вам оплачивать больничный не будет.
    Рабочее место тоже ваше и т.д.

    Дальше. Платы можно заказать в России (Резонит, Тепро). Дороговато за подготовку, нормально за дециметр, быстро. Или в Китае - подготовка, за дециметр дешево, долго.
    Паять такие маленькие партии однозначно у нас.

    Где находить изготовителей плат. Есть контрактные производства. Их могут не устроить ваши маленькие объемы.
    Есть фрилансеры (паяльшики дома) - их нужно искать по форумам, в разделе Предлагаю работу.
    Цену за точку пайки не знаю, поищите инфу.
    Вы им платы и пакет с комплектацией, они вам платы через пару дней.
    Вот здесь узнайте electronix.ru/forum/index.php?showforum=78

    Покажите платы, может еще чего подскажу.
    Ответ написан
    1 комментарий

Лучшие вопросы пользователя

Все вопросы (45)