Задать вопрос
  • Есть ли где-то статистика по количеству активных https сайтов?

    Гугл, опираясь на свою статистику с хромом, говорит, что 95%+ сайтов используют https (что не удивительно. Ведь хром очень сильно ругается, если решишь зайти на http)

    Но эта статистика не учитывает интранет, где http всё ещё более чем оправдан.
    Ответ написан
  • Как присвоить значения переданным переменным из C#?

    Поправил ваш код, чтобы он работал:
    #define sizeof_var( var ) ((size_t)(&(var)+1)-(size_t)(&(var)))
    
    extern "C" bool __declspec(dllexport) someFunction(std::string source, int64_t* num, int 64_t* num2) {
        std::vector<char> bytes(source.begin(), source.end());
        bytes.push_back('\0');
        char* c = &bytes[0];
        *num = *c; // ???
        *num2 = sizeof_var(c);
        return true;
    }


    Мне кажется, вы хотите чего-то странного.
    Расскажите подробнее, зачем вам это.
    Вполне возможно, что для этого не нужно использовать pinvoke
    Ответ написан
    Комментировать
  • В каких браузерах и устройствах работает push уведомления FCM?


    FCM от google поддерживает отправку только на гугловские устройства и браузеры или не только?

    В те браузеры, которые поддерживают веб пуши.
    В Safari на iOS они не поддерживаются.
    Так что тебе имеет смысл для iOS делать приложение
    Ответ написан
    Комментировать
  • В чем практический смысл тестирования?


    Какие тесты нужно было сделать, чтобы предотвратить этот баг?

    Такие дефекты, обычно, отлавливаются при помощи ручного тестирования.

    Но искать визуальные баги в тексте в играх - это очень дорогое занятие, тк нужно сценарии прогонять на десятках разных конфигураций (разрешение экрана/масштабирование интерфейса/язык)
    => поиск такого бага до выпуска новой версии будет занимать много времени => это будет очень дорого.
    Что вообще не соотносится с его критичностью.

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

    А так да - тут скорее архитектурная проблема и дизайнер не учёл, как должно работать переполнение строки в этом случае.


    Так в чем практический смысл тестирования? Где оно нужно, когда даже крупнейшие компании допускают явные баги на главном экране игры (а там про команды с миллионными бюджетами).

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

    Игры тут не самый лучший пример, тк их тестирование несколько отличается от тестирования обычного ПО своей количественной (очень много чего может сломаться) и качественной (много что сложно проверить) сложностью, а также количеством различных граничных значений.
    + в играх есть рандом, который может в неожиданных местах всё сломать.
    Ответ написан
    Комментировать
  • Не правильное время в Manjaro?

    В общем тут была ошибка в американском формате дат.
    Автор, видимо, написал 08/12/2022, держа в голове 8 декабря.
    Но в американском формате это получилось 12 августа
    Ответ написан
    2 комментария
  • Что использовать для отрисовки 3d графики на Rust?

    vabka
    @vabka Куратор тега Rust
    Самое модное и молодёжное - wgpu
    Умеет работать с Vulkan, Metal, OpenGL, DirectX, WebGL. На главной странице есть и примеры приложений

    Ещё, возможно, тебя заинтересует naga, как дополнение к wgpu - это либа для трансляции шейдеров.

    Ещё, возможно, тебя заинтересует bevy
    - это ECS-фреймворк для разработки игр и не только. В него встроена поддержка wgpu
    Ответ написан
    2 комментария
  • Не понимаю в чём ошибка в коде, как исправить?

    Очевидно-пропустил запятую на указанной строке
    Ответ написан
    Комментировать
  • Как писать приватную переменную, если она изначально с большой буквы?

    Обычно приватные поля пишут с нижним подчёркиванием, с маленькой буквы. (_context)
    С большой буквы, обычно, пишут публичные свойства.
    Если у вас в команде принято писать с нижним подчёркиванием и с большой буквы, то пишите так, как принято (_Context)
    Ответ написан
    Комментировать
  • Почему видео не включается на телефоне?

    Это особенность мобильных браузеров - они стараются экономить заряд батареи, а по тому и не запускают автоматически откровенно ненужные видеоукрашательства.
    Ответ написан
  • Как сделать, чтобы установленные шрифты объединялись по начертанию в Windows 10?

    То что ты сделал - это ты установил десяток разных шрифтов с похожими именами.
    То что стандартное - это один шрифт, в который встроено несколько вариантов начертания.
    Ответ написан
    Комментировать
  • Вылазиет ошибка не знаю как решить?

    Это значит, что у тебя нет модуля win32crypt
    Его нужно установить через pip
    Ответ написан
    Комментировать
  • Что это за скрипт?

    Буквально первая строчка в гугле

    Swap nodemon instead of node to run your code, and now your process will automatically restart when your code changes
    Ответ написан
  • Какие статьи почитать (или видео), чтобы разобраться полностью в теме про роутинг в .net?

    Ну варианта три:
    1. Конвенции
    2. Атрибуты
    3. MapGet / MapPost итд

    Это если не считать всякие сторонние роутеры типа F# Giraffe

    Атрибуты были и в .net framework.
    А от Convention based все уходят, тк:
    1. Не позволяет делать нормальный rest-style роутинг. Да и в принципе маршруты с ним получаются не очень красивые, и не очень предсказуемые.
    2. Легко может поломаться

    private static void MapEndpoint(

    Последнее - это частный случай 3го варианта. Ещё он есть в формате отдельной библиотеки - Carter
    Ответ написан
    2 комментария
  • Сортировка полей объекта?

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

    Ещё можно попробовать программно через https://learn.microsoft.com/en-us/dotnet/standard/...
    (вот примитивный пример, который не учитывает атрибуты)
    using System;
    using System.Text.Json;
    using System.Text.Json.Serialization;
    using System.Text.Json.Serialization.Metadata;
    
    var options = new JsonSerializerOptions
    {
        TypeInfoResolver = new DefaultJsonTypeInfoResolver
        {
            Modifiers = { AlphabeticalOrderModifier }
        },
        WriteIndented = true
    };
    
    var obj = new MyClassA { X = 42, B = new MyClassB { X = 69 } };
    var result = JsonSerializer.Serialize(obj, options);
    Console.WriteLine(result);
    
    static void AlphabeticalOrderModifier(JsonTypeInfo jsonTypeInfo)
    {
        if (jsonTypeInfo.Kind != JsonTypeInfoKind.Object) return;
        var properties = jsonTypeInfo.Type.GetProperties(BindingFlags.Public | BindingFlags.Instance | BindingFlags.GetProperty).OrderBy(x => x.Name);
        jsonTypeInfo.Properties.Clear();
        foreach (var property in properties)
        {
            var propertyInfo = jsonTypeInfo.CreateJsonPropertyInfo(property.PropertyType, property.Name);
            propertyInfo.Get = property.GetValue;
            propertyInfo.Set = property.SetValue;
            jsonTypeInfo.Properties.Add(propertyInfo);
    
        }
    }
    
    class MyClassA
    {
        public int X { get; set; }
        public MyClassB B { get; set; }
    }
    
    class MyClassB
    {
        public int X { get; set; }
    }


    Выводит такое (как раз всё в алфавитном порядке, не смотря на то, в каком порядке всё написано в классе):
    {
      "B": {
        "X": 69
      },
      "X": 42
    }
    Ответ написан
    8 комментариев
  • Как привести код в читаемый вид?

    Код у тебя обфусцирован.
    Можешь попробовать деобфусцировать при помощи каких-нибудь автоматических инструментов (гугли "deobfuscate JavaScript code")
    Возможно, придётся поиграться с настройками.
    Но не факт, что получится что-то очень читабельное.
    И абсолютно точно ты не получишь легкочитаемый исходный код - оригинальные названия переменных и функций ты точно не получишь
    Ответ написан
  • Как реализовывать коллизии в skia?

    skia отвечает только за отрисовку.
    Всё остальное ты должен реализовать сам.

    Как мысль: ты можешь запускать "симуляцию" движения этих фигур и периодически просить skia отрисовать кадр получившейся симуляции.
    Ответ написан
  • Random.Range(0, 2) не возвращает значение 2, что делать?

    Второй параметр Random.Range - это верхняя граница НЕ включительно.
    Так что тебе нужно просто передать туда 3, вместо 2, как сказал K0TlK
    Ответ написан
    Комментировать
  • На чем делать UI для Windows в 2022 году?

    MAUI - это масштабное обновления xamarin-а по сути. ИМХО без поддержки Linux его кроссплатформенность мало чего стоит.
    WPF - это нативная технология при этом с WPF тебе доступны всякие сторонние и родные контролы. В том числе самые новые от WinUI 3.
    UWP превратился в WinUI 3
    Avalonia - кроссплатформа. "Как WPF но лучше", но без поддержки контролов от WPF или WinUI, но есть много свободных вполне неплохих. Да и система стилей достаточно удобная

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

    На втором месте наверное AvaloniaUI смущает что на нем каких то больших проектов.

    Есть много разных проектов, в том числе крупных и коммерческих, и от именитых компаний.
    https://avaloniaui.net/Showcase

    Так как программа небольшая я склоняюсь все быстро сделать на Windows Forms, в 2022 году кто то стартует на нем новые проекты?

    Если ты делаешь что-то небольшое и чисто для себя, и ты не умеешь работать с XAML и нет времени на освоение - нет причин не использовать Winforms. Да, он имеет проблемы с производительностью, да он не очень красивый, да винформы не очень легко поддерживать. Но является ли это реальной проблемой для вашего проекта?

    В общем вот мой топ-чарт:
    1. Если дёшево и сердито - Winforms (остальное - если нужен нормальный дизайн)
    2. Если кроссплатформу - Avalonia
    3. Если нужно на телефоны - MAUI (хотя Avalonia уже можно заставить работать на Android)
    4. Если хочется в новый дизайн винды - WinUI 3
    Ответ написан
    6 комментариев
  • Чему изначально равен GET запрос?

    <form method ="GET">

    В чём смысл делать форму с GET? Это форма поиска?
    Пока мы не нажали на кнопку "отправить", чему равен каждый элемент
    глобального ассоциативного массива?

    Ничему не равен - его ещё просто не существует, тк скрипт запустится только тогда, когда этот GET запрос придёт на сервер. А запрос будет отправлен только после нажатия на кнопку.

    И грамотно ли я вывел значения GET запросов в цикле?

    Нет. Ты в цикле проходишься по обычному массиву, а синтаксис используешь такой, будто по ассоциативному.\
    А ещё у тебя отступов в коде нет, ни в html, ни в php - читать сложно.
    Правильнее будет так:
    $request = $_GET; 
           	   
    $keys = ["name1", "age1", "weight1"];
    
    foreach($keys as $key){
      if(isset($request[$key])) {
         echo $request[$key];
      }
    }

    Либо так:
    $request = $_GET; 
           	   
    foreach($request as $key=>$value){
         echo $key.'='.$value;
    }
    Ответ написан
    21 комментарий