Задать вопрос
  • В чем смысл майнинга?

    Это всё сложные и объемные вопросы, на которые пишутся целые книги, я лишь обозначил несколько моментов, причем со своей точки зрения. Не хочу разводить полемику, понятное дело, что если интерес к криптовалюте пропадёт, то она станет не нужна. И наоборот, если все перейдут на криптовалюту, то государственные деньги станут не нужны. Одна из теорий развития человечества говорит, что государства не нужны, должно быть одно государство на всю планету, если угодно. Следуя этой теории, выгодней использовать криптовалюту, а не кормить каких-то дармоедов, у которых есть денежный принтер.
    Насчет того, когда закончится добыча денег нужно читать первоисточники, этот вопрос рассматривается. Смысл в том, что за перевод другому человеку какой-либо суммы удерживается небольшая комиссия, которая идёт в счет тех, кто, по сути, поддерживает работу сети (несколько человек должны подписать транш, чтобы он стал законным). Если будут переводы, то будут те, кто будет поддерживать эту сеть, она не развалится.
  • Номера ошибок. Требуется однократно указать номер ошибки в коде. Есть хорошая практика?

    Примерно так мне и сказали, работает - не трогай. Просто в некоторых местах некорректно работало, пришлось подставить пару костылей. И дальше работает, никто трогать не собирается. Но это неправильно.
    Сейчас вы ищите какой-то номер в своём коде и пытаетесь сделать систему, которая будет отслеживать номера. Потому что вы уже сами начинаете путаться в своём коде ) Вам разве не жалко того, кто будет это поддерживать после вас? )
    С корректной валидацией у вас будет сообщение, к примеру, поле "name" не прошло валидацию по двум пунктам (с понятными текстовками), чего его искать это поле, оно одно в классе и на нём несколько валидаторов, ничего вообще искать не надо.
  • Номера ошибок. Требуется однократно указать номер ошибки в коде. Есть хорошая практика?

    А, ну и про номера, я ж не знаю, зачем вам вообще номера. Если лично для вас, чтобы вам было легче искать ошибку в куче if-ов, то номера будут больше не нужны ) А если они где-то дальше используются, то заведите enum
  • Номера ошибок. Требуется однократно указать номер ошибки в коде. Есть хорошая практика?

    Валидатор решает такую задачу, что в любой момент времени мы можем сказать валидна ли модель. То есть, если у вас есть какие-то гибкие настройки, то они должны быть частью модели. В данном случае необходимо min и max сделать полями модели и написать кастомный валидатор, который будет сравнивать одно поле модели с двумя другими (пример есть на том сайте). Соответственно, если у вас много таких параметров, то лучше поместить их в одно поле сложного типа, чем делать много полей примитивных типов.
    Ну вообще согласен, бывает так исторически складывается код, что тяжело уже как-то переделать или взглянуть под другим углом.
    На последнем месте работы сделали примерно то же самое, механизм логирования сделали велосипедным через список, примерно со своими кодами. Накидывали этот класс через наследование (sic!), затем туда же внутрь долепили механизм валидации (с допущениями). В общем, весь этот код противоречит сразу четырём принципам, но начальство говорит: "у нас так сложилось исторически, переделывать не будем, другой механизм применять нельзя, используй что есть".
  • Номера ошибок. Требуется однократно указать номер ошибки в коде. Есть хорошая практика?

    Ваш описанный кейс - это механизм валидации. Не нужно городить огородов изобретая свой собственный велосипед с номерами ошибок. Когда вы придёте на работу в другой проект, вы можете сказать, я использовал fluent validation (или пользовался model state-ом), вы будете поняты и там может использоваться что-то из этого. А когда вы скажете, что написали для этого свой велосипед (и много не учли, вопрос-то объемный), то толку от этого в будущем не будет.
    Если у вас в метод передаётся более трёх параметров, то это уже называется простыня. Это не привязано ни к mvc, ни к web api. Такой набор параметров оборачивают в класс данных и это очень удобно, так как изменения вносятся в одном месте и в веб разработке очень востребовано, поэтому все на них перешли. Такой класс удобно сериализовать или накинуть на него валидацию.
    Я не отговариваю вас сразу всё бросить и кинуться всё переписывать, я лишь даю пищу для размышления и говорю, как это делают другие.
    Могу порекомендовать сайт Метанит, он вообще суперский, всё описано кратко и по делу:
    https://metanit.com/sharp/aspnet_webapi/2.9.php
  • Как чайнику захостить .net core на Raspberry Pi3?

    Jeer
    @Jeer Автор вопроса
    Доброго дня!
    Статью обязательно посмотрю. С одного клика не получится, я уже понял ) С докером печальная история, он работает начиная с вин10про, у меня дома стоит 8.1, переустанавливать систему только из-за этого желания пока нет. Десятка стоит на работе, но там некогда ковыряться со своими хобби. Если по другому не получится, то придется как-то поднатужиться.
    Белый ip у хостера стоит 100 рублей, хотя давно уже не смотрел тарифы. Аренда виртуалки (2гб рам, 1 ядро) от 800 рублей, если не ошибаюсь, возможно, есть чуть дешевле, не копался. Дороже видел, дешевле нет. Да и вообще, это скорее в образовательных целях, что именно вот на этой штуке, которую можно потрогать, на ней висит какой-то сайт. Плюс на будущее, если вообще получится, подключить несколько штук, сделать распределенный сервер, всякие там замеры производительности по нагрузочному тестированию.
    CI\CD я как представляю себе, что это просто запуск тестов после публикации. У меня с тестами не очень сложилось, на всех проектах, где я был, либо совсем не писалось тестов, либо они скатывались в какое-то болото и на них откровенно забивали.
    С этим пунктом я имел в виду такие ситуации, что в среде разработки всё работает, публикуешь, а там проект не запускается, (думаю, что причин не запуска в разнородных средах будет масса), банально, одна из библиотек не той версии загрузилась. Если проект не запускается, то тестирование тут не поможет, я имел в виду вот такое поведение и как с этим бороться.
    Вчера поставил себе виртуалку с линуксом, читал, что visual studio ставится и на линукс тоже. Ну, чтобы хоть как-то приблизить окружение. Там visual studio code и она прям вообще другая. Скачал гит, скачал какой-то свой маленький проект, который писался на винде, даж не понял, как его запустить ) в общем, в ближайшее время буду курить мануалы по студии для начала. Потом попробую поработать с докером с линукса.
    В общем, спасибо большое за участие, работа кипит )
  • Как настроить webpack?

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

    Алексей, Если парсится корректно, то в чем вопрос? )
  • Насколько сложно сделать рефакторинг проекта и переписать код с C# на Python/Java?

    Привет, был реальный опыт энтерпрайза на core с релизом в линуксе?
  • Как начать работать с Docker на Windows?

    Jeer
    @Jeer Автор вопроса
    о, спасибо ) тогда отложу свои изыскания до следующей недели )
  • Как начать работать с Docker на Windows?

    Jeer
    @Jeer Автор вопроса
    да, в прошлом месяце нугет пакеты не хотели скачиваться. Пойду попробую подрубить запрещенное ПО типа тора, спасибо )
  • Что делать, если не выключается ноутбук (Windows 10)?

    Ну, обрубает питание, то же самое, что вытащить батарею из ноутбука, либо вытащить компьютер из розетки, потенциально опасно, да. Настолько же опасно, как и вытаскивать флешку без безопасного извлечения. Разве вам не хочется рискнуть?
  • Почему не работает умножение десятичных дробей в js?

    Тогда (благодаря моему навыку телепатии) у вас где-то переменные оборачиваются в parseInt.
    Проследите всю цепочку, можете выводить значения в console.log(dlina).
    Без кода тяжело сказать
  • Как проверить переменную на пустоту в ajax форме?

    Окей, оказалось посложнее, похоже из коробки нужного сериализатора нет
    Добавьте функцию

    //serialize data function
    function objectifyForm(formArray) {
    
      var returnArray = {};
      for (var i = 0; i < formArray.length; i++){
        returnArray[formArray[i]['name']] = formArray[i]['value'];
      }
      return returnArray;
    }


    Затем, модифицируйте код:

    var fieldArr = $(this).serializeArray();
    var msg = objectifyForm(fieldArr);
    if(!msg.name || !msg.email) return;
  • Как проверить переменную на пустоту в ajax форме?

    Отладчик-то что говорит? Что лежит в msg?
    var msg = $(this).serializeArray();
    console.log(msg);
    console.log(msg.name);
    console.log(msg.email);
  • Как проверить переменную на пустоту в ajax форме?

    твой метод сериализует переменные в строку для отправки методом get. А у тебя идёт отправка методом post, тебе нужен обычный объект для отправки, который получается методом serializeArray()
  • Как проверить переменную на пустоту в ajax форме?

    А, понял ) ты взял не тот метод, используй:
    var msg = $(this).serializeArray();
  • Как проверить переменную на пустоту в ajax форме?

    Булеву алгебру же не нужно пояснять? )
    Какие поля используются на форме?
    Тут я написал, если поле name не заполнено или поле email не заполнено. Если у тебя другие идентификаторы на полях, то эти точно заполнены не будут и форма отправляться не будет )
    напиши так:
    var msg = $(this).serialize();
    debugger;
    if(!msg.name || !msg.email) return;


    в хроме открой панель разработчика нажав f12 и запусти страницу. Посмотри, какие переменные у тебя внутри msg, просто наведи мышку на эту переменную. Затем пропиши интересующие тебя условия перед return;