• Какую технологию выбрать для создания тестирующего приложения?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Делайте веб - десктоп на c++ будет заметно больше сложностей.
    Для С++ вам надо будет все равно делать какой-то сервер
    Будут сложности с тем чтобы скрыть правильные ответы или ответы других учеников.
    Распространять и устанавливать будет сложнее.
    Проблемы в духе "а у меня не запустилось, я не смог пройти тестирование" или "я бы сдал тест, но он на последнем ответе заглючил и вылетел, можно пересдам вне очереди" и так далее.
    Веб несложно сделать правильно и надежно.
    Ответ написан
    Комментировать
  • Какую технологию выбрать для создания тестирующего приложения?

    Несколько учеников проходят тестирование, результаты получает учитель.
    Мне кажется, web будет проще реализуем. С 2мя видами интерфейса - для прохождения тестирования и просмотра результатов / управления тестированием. И не нужно думать как доставлять результаты учителю на комп :)
    Ответ написан
    Комментировать
  • Разработка в Windows 10 под Linux с Docker?

    @yayashitoya
    Тут уж скорее Vagrant а не Docker (и даже быстрее, чем WSL, несмотря на то, что Vagrant использует полноценную виртуальную машину в отличие от WSL).

    Именно Vagrant и предназначен для быстрого подъема среды разработки. Похож на Docker в кое-чем (например, также через один единственный файл конфигурится Vagrantfile, почти Dockerfile; также в конфигурационном файле можно указать все необходимое ПО).

    Если поищите в https://app.vagrantup.com/boxes/search, то наверняка с готовым стеком LEMP найдете. PHPStorm, разумеется, должен быть под родным GUI, а не внутри виртуалки.

    Да, Windows/MacOS на голову выше по удобству GUI, чем Linux, вам не кажется.

    Даже работая на Ubuntu вполне имело смысл создавать полностью изолированную среду для запуска/отладки, чтобы избежать трудноуловимых глюков при переезде проекта на сервер (из-за неидентичности окружения, прежде всего библиотек; из-за различия в версиях - и для PHP как раз подобные проблемы встречаются нередко).

    Так что использовать Docker/Vagrant вполне себе разумно, неважно где вы при этом работаете на Windows/MacOS/Linux.

    Однако, конкретно Docker представляется неудобным. Вы хотите его прикрутить для задач, для которых он не предназначен изначально. Концепция Docker подразумевает, что ПО стабильно и находится в контейнере. Меняются только данные, что подключены через volume. Прикрутить конечно можно, но...
    Ответ написан
    Комментировать
  • Как быстро заменить цифры в однотипных документах на разные только в одном месте?

    @Alex_At_Net
    Обращайтесь, помогу - https://t.me/codecraft_phd
    Попробуйте так:
    1. Сделайте резервную копию файлов
    2. Создайте файл update.js (код ниже) в директории с файлами
    3. Запустите node update.js

    update.js
    const fs = require('fs');
    fs.readdirSync('.')
      .filter(file => file.indexOf('.php') !== -1)
      .forEach(file =>
        fs.writeFileSync(file,
          fs.readFileSync(file, { encoding: 'utf8' })
            .replace('1', parseInt(file))));
    Ответ написан
    Комментировать
  • Собираюсь учить С++, но какими знаниями надо обладать?

    @Wentixon
    Достаточно, начинай писать

    Вот интересно зачем и кто задаёт такие вопросы.. как можно спросить вообще достаточно ли у меня знаний? Если ты знаешь как это сделать, то достаточно, если ты пробуешь и не получается, то недостаточно. Это же очевидно! Да и ты вообще свои знания не описал. Физика и алгоритмы тебе явно помогут сервер написать..

    А если умеешь разрабатывать алгоритмы, то разработай алгоритм написания сервера или обучения..
    Ответ написан
    2 комментария
  • Как получить сообщения с помощью GetMessage?

    @none7
    Создание невидимого окна, созданного без dwStyle : WS_VISIBLE и с ShowWindow(hWnd,SW_HIDE), является традиционным способом ловли оконных системных сообщений, работающим даже для служб. При этом вовсе не обязательно компилировать приложение как графическое. Ведь никто не мешает вызвать функции RegisterClassEx и CreateWindowEx в консольном приложении или службе.
    Ответ написан
    Комментировать
  • Почему у std::string нет человеческого replace?

    Tesla4o
    @Tesla4o
    Без пользы жизнь - безвременная смерть... В. Гете
    Есть такой репласе!

    std::string str = "string test";
    std::replace(str.begin(), str.end(), 's', 'd');
    Ответ написан
    Комментировать
  • Объясните по C++?

    Vass
    @Vass
    C++/Qt Developer
    1. Никто не пишет на чистом WinAPI. И тем более ни к чему его изучать, нужно просто иметь представление как он работает, а какие-то конкретные решения описаны в документации - когда потребуются тогда и выучишь.
    2. Для создания приложений потребуется ознакомиться с каким либо фреймворком, будь то кроссплатформенный Qt или что-то более нативное для Windows.
    3. Если не касаться окошек, то чтобы выйти за рамки теоретических програм, нужно начать писать такую не теоретическую программу.
    4. Чтобы понимать структутру программ на ассемблере, неплохо бы помимо C++ еще немного изучить сам Ассемблер, принципы архитектуры процессоров, приципы архитектуры приложений под конкретную ОС.
    5. Дебаггинг с IDAPro в 21 веке - это экстремальщина. Если ты дебажишь свое приложение на С++ то у тебя есть его исходники, есть куча дебаггеров под конкретные языки которые прекрасно умеют дебажить по исходникам.
    Ответ написан
    Комментировать
  • Как сравнить с Enter?

    customtema
    @customtema
    arint.ru
    Не надо сравнивать с Enter.

    Надо обрезать пробельные символы (пробел, табы, символы новой строки и "перевода каретки") с краёв полученного, и оценивать размер полученной строки. В дальнейшем - работать именно с обрезанной строкой.
    Ответ написан
    2 комментария
  • Насколько легален данный метод активации Windows?

    tsklab
    @tsklab
    Здесь отвечаю на вопросы.
    легальный данный метод активации Windows
    Есть только один: в бухгалтерии должен быть проведён документ о покупке лицензий у тех, кто имеет соглашение с MS. Ключи значения не имеют.
    Ответ написан
    1 комментарий
  • Как можно узнать количество нулей в числе?

    0xD34F
    @0xD34F
    int count = 0;
    while (val >= 10) {
      count++;
      val /= 10;
    }


    Интересуют только числа вида 10 в степени "кол-во нулей".

    Если вдруг заинтересуют и другие - замените count++ на что-то вроде count += val % 10 ? 0 : 1.
    Ответ написан
    Комментировать
  • Как загрузить юникод в Delphi?

    xpert13
    @xpert13
    Full Stack Developer
    Это не Юникод символ, это символ с кодом 0. Во многих языках программирования этот символ обозначает конец строки. На сколько я помню, для Delphi этот символ не помеха, но при попытке вывести содержимое TStringList в какой-то контрол (Memo например), то обрезание будет как раз на этом символе.

    Посмотрите через дебагер какое содержимое у TStringList после загрузки файла. Если там есть весь файл - тогда вам нужно просто удалить этот символ, если же нет - тогда загружать файл вам необходимо будет через TFileStream, после чего опять таки удалять этот NULL и дальше передавать куда нужно.
    Ответ написан
    Комментировать
  • Как изменить дефолтный вид контролов в Windows?

    SerJook
    @SerJook
    кодер
    В Winapi нельзя гибко изменять внешний вид контролов, как это можно делать в HTML/CSS.
    Могу сказать про кнопку.
    Установите ей стиль BS_OWNERDRAW, а в родительском окне обрабатывайте сообщение WM_DRAWITEM и рисуйте кнопку, как вашей душе заблагорассудится. То есть вам по сути с нуля придется повторить поведение кнопки во всех ее состояниях (наведен курсор/нажата/отжата/дизэйблена и т.д.). В зависимости от того, чего вы хотите добиться, вы можете использовать для отрисовки GDI/GDI+ или другую графическую библиотеку. Если вы хотите, чтобы кнопка была похожа на стандартную, используйте Visual Styles API.
    С Edit контролом труднее. Он не поддерживает ownerdraw. Чтобы убрать бордер, убедитесь, что у него нет стилей WS_BORDER и WS_EX_CLIENTEDGE.
    Чтобы изменить цвет текста или фона, обрабатывайте в родительском окне WM_CTLCOLOREDIT. Тень и бордер вы можете вручную нарисовать вокруг edit-контрола в родительском окне.
    Ответ написан
    2 комментария
  • Почему компилятор выдает ошибку [Error] ld returned 1 exit status?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    undefined reference to `OpenRusEng'

    ld наверно прав: в приведённом коде действительно нет такой функции.
    Ответ написан
    Комментировать
  • Почему n^3 работает быстрей чем 2^n?

    LaRN
    @LaRN
    Senior Developer
    Потому что если подставить в формулу N >= 10, то значение 2^N больше N^3.
    Ответ написан
    1 комментарий
  • Что там с Delphi?

    sim3x
    @sim3x
    Вообще сейчас не стоит в эту сторону смотреть?
    нет

    Хотите на винде пилисть формочки? - C#

    Хотите кроссплатформенно пилить формочки? Веб, Qt

    ИМО сейчас требование делфи === будете допиливать проект на 7 (в лучшем случае, а то и на 4-5)
    Ответ написан
    1 комментарий
  • Как настроить среду delphi?

    sabramovskikh
    @sabramovskikh
    Никак
    Ответ написан
    Комментировать
  • Где поискать опенсорс проекты на С++?

    Nipheris
    @Nipheris Куратор тега C++
    А как вы искали, если не секрет? Я хочу узнать, как искать так, чтобы ничего не найти.

    Запрос "c++ open source projects" даёт первой же ссылкой набирающие популярность C++-проекты на гитхабе, среди которых TensorFlow, биткоин, OpenCV, Электрон, Solidity и прочие монстры индустрии. Время поиска - ~20 секунд.
    Ответ написан
    1 комментарий
  • Как правильно создать >=1000 потоков?

    profesor08
    @profesor08
    Похоже на первый опыт ддоса своей бд. Распредели нагрузку так, чтоб число соединений в секунду не превышало лимита, на который настроена бд. И все получится.
    Ответ написан
    Комментировать
  • Загрузить 350000 строк на сервер, как сделать?

    @Free_ze
    Пишу комментарии в комментарии, а не в ответы
    Можно попытаться разбивать файл на чанки и их поэтапно отправлять разными запросами.
    Ответ написан
    Комментировать