Задать вопрос
  • Как подключиться к Wifi на C++?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тебе работать с Wifi на С++ нужно будет только в одном случае - когда ты разработчик драйвера Wifi устройства.

    В остальных случаях - ты пишешь обычные приложения на С++ которые используют сокеты TCP/UDP, которые (сокеты) в свою очередь работают через стек технологий ОС для кидания пакетов в Wifi интерфейсы в соотвествии с правилами таблиц маршрутов.
    Ответ написан
    2 комментария
  • Не получается сделать exe. Почему?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Он скорее всего работает. Просто консоль так быстро появляетя и исчезает что ты не успеваешь разглядеть.
    Там сразу после печати Hello идет return.

    Добавь туда cin >> для того чтоб было какое-то ожидание от пользователя.
    Ответ написан
    1 комментарий
  • Как вывести буквы, которые используется наиболее кол-во раз?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Можно отсортировать массив букв любым алгоритмом. Тогда буквы выстроятся в серии.
    Например

    aaaaaabbccccccccccdeeeeggggff

    И тогда самая длинная серия и будет ответом.

    Антагонист этого метода - это сортировка подсчетом. Это то о чем писал Wataru.
    Оба метода - рабочие. Можно обсуждать тонкости которые в задаче не были заданы.

    Стоит ли их обсуждать? ХЗ
    Ответ написан
  • Возможно ли оптимизировать Inline метода с throw с помощью директив препроцессора?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Не скажу насчет C# но в других языках и технологиях обработка Exception когда оно уже случилось
    приводит к тяжелым последствиям для производительности. Мне кажется лучше возвращать код
    ошибки или как-то по другому проверять capacity.
    Ответ написан
  • Какой самый легковесный nix-дистрибутив?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Любители докеров и безопасники любят alpine-linux. Вроде там все по минимуму.

    UPD: Alpine
    Ответ написан
    2 комментария
  • Как организовать код, сниппеты, файлы внутри команды?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если команда большая (больше чем скрам) то имеет смысл раз в неделю собираться на голосовом
    митинге в полном составе и хотя-бы по 5 минут заслушать каждого. Кто чем болеет. Какие проблемы.
    Какие разработки. Далее по результатам надо думать о создании общего репозиатрия кода.
    Что-то вроде библиотеки. И сводить в библиотеку только реально нужное и разделяемое между
    проектами. Библиотекой должны заниматься опытные. Она должна иметь структуру и документированность.
    Она должна вбирать в себя только полезное. По принципу реального боевого кода. Код который
    морально устарел или не используется лучше выбросить из библиотеки.

    Нужно создать условия когда код из библиотеки не копируется а инклудится в проекты. Если кто-то
    берет наброски и "дорабатывает" - надо смотреть что он доработал и почему.

    По иному - вряд-ли получиться. Сниппеты и горизонтальная переброска кусков кода между верстальщиками
    и разработчиками - это хаос. Кроме роста количества файлов и сниппетов - ничего полезного не будет.
    Ответ написан
  • Почему при выборке элементов SQLite в Android studio суммируемые числа округляются до целого?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Надо сменить тип данных с TEXT на NUMBER. Тогда суммирование будет точнее. По крайней мере я проверил вот так.

    sqlite> create table test(n number(2,3))
       ...> ;
    sqlite> insert into test values(16.30);
    sqlite>
    sqlite> select typeof(n) from test;
    real
    sqlite>
    sqlite> insert into test values(19.11);
    sqlite>
    sqlite> select total(n) from test;
    35.41
    sqlite> select sum(n) from test;
    35.41
    Ответ написан
    Комментировать
  • Почему функция count() увеличивает время запроса в 5 раз?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот эти две вьюшки можно заменить на одну.

    t2 AS (
        SELECT id
          FROM books
         WHERE dateYearPublished IN (2000) 
    ),
    t3 AS (
        SELECT id
          FROM books
         WHERE pagesCount BETWEEN 200 AND 1000
    ),


    что-то вроде

    tbooks AS (
        SELECT id
          FROM books
         WHERE dateYearPublished IN (2000) and pagesCount BETWEEN 200 AND 1000 
    )


    Ну и count каждый раз считать не надо. Как-то кешируй там результат.

    Очень часто новичкам нужен не count а exist хотя-бы одной строки. А это другой вид запросов.
    И его использовать выгоднее чем count.
    Ответ написан
    Комментировать
  • Как осуществить сбор данных подключенных usb устройств на Linux?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Флешка в автоматическом режиме открывает терминал, пишет pip intall badusb

    Это скорее всего не работает.
    Ответ написан
  • Для чего нужна аннотация @Serializable в либах Java/Kotlin?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    С точки зрения Java language, аннотации ничего не делают. Они - как каменты в коде. Но они могут быть подсказками для фреймворков которые в compile time, classloader или runtime могут что-то выполнить над кодом. 99%
    это какие-то ORM/JSon подказки которые разъясняют фреймворку что делать. Например @Table(name="emp")
    подсказка JPA то класс относится к таблице emp.

    Ваш вопрос про либы Java/Kotlin слишком общий. Ничего конкретного нельзя сказать. Но по отношению к
    Serializable, можно предположить что это гарантия что класс можно сериализовать во внешнюю память
    (оперативная или диск) и это не нарушит никакой бизнес логики. Например это DTO которая полностью
    самодостаточная. Не все сущности вообще реально сохранить. Некоторые сущности - как орграф опутывают
    всю память Java и сохранять их накладно. Как корневой объект хипа. Дешевле дампнуть всю память чем
    сохранять такие объекты поштучно. Некоторые - имеют связи с внешними ресурсами Files/Sockets и вне контекста они не имеют смысла. Есть ключевые слова языка (transient) которые запрещают сериализацию для полей.
    Есть также проблема версионности для Serializable. Сохраненная структура не трекает ваши изменения
    по коду уже после того как вы что-то сохранили. Грубо говоря это не JSON. Если вставили новое поле - можете
    старый файл и не прочитать. В качестве маркера проблемы там заводят специальное поле типа versionId или
    что-то такое. Просто для детектирования.

    Если вы хотите иметь тотальный контроль над сохранением - то определяйте Externalizable и там будут 2
    метода в которых вы контролируете Output/Input streams и сами пишете что сохранять и читать. А еще
    лучше брать библиотеки Kryo/Protobuf/Avro e.t.c. У них еще и есть оптимизации по скорости и по сжатию.
    Вы к этому придете эволюционным путем если будете писать систему где сохранение во вне - важно.

    Сериализация во внешнюю память это огромная проблема когда мы пытаемся подружить разные
    технологии (32-64 бит целые числа или разный порядок байт в машинном слове). Даже простое
    сохранение даты или строки может быть ошибочным если вы сохранили в Java а пытаетесь читать в C++.
    Нужна 100% бинарная совместимость всех структур. Вот библиотеки Протобуф и Авро
    как раз для этого создавались.
    Ответ написан
    Комментировать
  • Как выполнить перевод 8-ми битного отрицательного числа из десятичной системы счисления в шестнадцатиричную?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот из википедии. Как из положительного сделать отрицательное в формате ДК (дополнительный код).

    int twos_compl_abs(int a) {
        if (a < 0) a = (~a) + 1;
        return a;
    }


    Инвертируем и добавляем единичку.

    Для числа -100. Берем сначала по модулю. 100 - это 64 + 32 + 4

    0110 0100

    Инвертируем

    1001 1011

    И прибавляем 1

    1001 1100

    В хекс-системе тоже число будет

    9C
    Ответ написан
    Комментировать
  • Вылеты, артефакты, фризы системы. Виноват нищенский БП?

    mayton2019
    @mayton2019
    Bigdata Engineer
    265WATT - это мало для современных ПК. Воспользуйся онлайн-калькуляторами
    для расчета мощности. Там легко. Укажешь свою конфигурацию и все компоненты
    и приложение покажет сколько тебе надо.

    И возьми с запасом хотя-б 15% для других устройств.
    Ответ написан
    1 комментарий
  • Можно ли учить python(ООП) с помощью pygame?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Судя по описанию pygame - это игровая библиотека. И она учит школьников делать игрушки.

    Никакому ООП она не научит. Если ставить цель - именно ООП - то лучше просто брать курс Python
    там и будет обязательно лекция по ООП в парадигме Python.
    Ответ написан
    Комментировать
  • Как составить запрос с динамической фильтрацией?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Делаешь такой шаблон
    SELECT * FROM `wp_s3cu_authorization_logs` WHERE 1=0

    а потом к нему добавляешь строки. Если был активирован флажок windows - то добавляешь строку
    OR os_id = 'windows10'
    Ответ написан
    Комментировать
  • В каком направлении развиваться SQL разработчику?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если честно - никуда. Чистый SQL разработчик - это как закручиватель гаек. В техно-стеке он слишком узкий
    чтоб ему давать задачи. Какие задачи ты до этого делал? Хранимки писал? Да кому нужна хранимка сегодня?
    Нужен наверное девелопер на языках программирвоания со знанием SQL.

    Вот в сторону разработчика и смотри. Веб там или не веб - не имеет значения.
    Ответ написан
    Комментировать
  • Как запустить Open Server?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Пиши письмо об ошибке вот сюда.
    Submit a detailed bug report to bugs.mysql.com

    Прямо в логах и пишут.
    Ответ написан
  • Оператор моб связи фиксирует местоположение абонента даже если не совершается звонков?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Да. Если брать абонентов А и Б то мобильный оператов всегда знает их положение с точностью
    до базовой станции. В противном случае А не смог бы дозвониться до Б. Радиус действия станции
    может быть от сотен метров до километров. Поэтому о точном местоположении абонента говорить сложно.
    Ответ написан
    Комментировать
  • Как сделать поиск данных из mysql которые сохраненны в формате unicode?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Эта строка просто не работает.
    $where .= " AND {$table_prefix}`{$this->search_by}` LIKE '%{$this->search}%'";
    Ответ написан
  • Почему в Java изменение интерфейса базового класса посредством модификации сигнатуры разрешено?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Несмотря на то что java/c++ формально являются ООП языками, многие вещи
    с перегрузкой у них реализованы по разному. В случае с методом sound в Java
    скорее всего будет создано просто 2 метода (разные сигнатуры).
    Ответ написан
  • Как сделать так, чтобы данные, которые я пишу в тг бота, заполняли сперва первую строчку в таблице postgre?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Ну в базах данных так не делают. Обычно все колонки именованы и имеют смысл.

    У тебя есть два варианта КМК. Можно провести еще один сеанс нормализации и сделать табличку
    так.

    id| q  | value
    1 | q1 | 1111....
    1 | q2 | 2222....
    1 | q3 | 3333333
    2 | q1 |......


    или сделать value как JSON и складывать туда массив

    id| json_value
    1 | [ "11111", "2222", "333333" ....]
    Ответ написан
    Комментировать