Задать вопрос
  • Какую бд лучше выбрать?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега SQL
    Седой и строгий
    Mongo почти никогда не проще использовать. Для её выбора должны быть очень веские основания.
    Ответ написан
    Комментировать
  • Что учить fullstack разработчику(.net core)?

    Steel_Balls
    @Steel_Balls
    Добрый день!
    Судя по вопросу, то ты junior без опыта работы.
    Чтобы стать Fullstack, у тебя должен быть опыт коммерческой разработки от 3 лет на позиции Middle (как минимум) в backend+frontend+devops+dba ОДНОВРЕМЕННО!
    порешав задачи на leetcode

    leetcode-задачки нужны только чувакам из яндекса и сбера/финтеха только для собеседований и ничего общего с реальностью эти задачи не имеют.
    Уже изучил C# до ООП включительно

    И что? А ШП ты изучил? Если нет, то грош цена твоему ООП

    И ещё, любой разработчик должен уметь пользоваться поиском. Если самому тебе трудно, то на, держи:
    https://roadmap.sh/full-stack
    (заметь, литкода там нет)
    Ответ написан
    3 комментария
  • В чем заключается суть бинарного поиска неотсортированного массива?

    wataru
    @wataru Куратор тега Алгоритмы
    Разработчик на С++, экс-олимпиадник.
    Ну ведь тут массив же отсортирован. Хоть и с приколом: он сдвинут. Можно тем же бинарным поиском найти, где там "разрыв" происходит, а после у вас 2 отсортированных куска. Или сразу модифицировать бинпоиск.
    Представьте, что у вас массив, где сначала идут 1, а потом 0. Можете найти в нем, где 1 переходит в 0?

    Или смотрите так: ищите вы x. Взяли значение a[m]. Можете, посмотрев на a[l], a[m], a[r] и x понять, в какой половине лежит x?

    Edit: ах, тут числа могут быть одинаковыми. Тогда бинпоиск тут не работает. Ибо может быть тест {1,1,1,2,1,1} - и тут можно 2 в любую позицию поставить. И, если вам надо эту 2 найти, то вам придется просмотреть все числа, иначе вы ее не найдете. Бинпоиск возможен, если первое и последнее числа разные.
    Ответ написан
    3 комментария
  • Что выбрать для CI/CD проектов на .net?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    • Самое ближайшее и доступное в вашем случае - GitHub Actions
    • Чуть более сложно, но больше гибкости и автономности - GitLab PipeLines (можно даже у себя захостить сервер)
    Ответ написан
    2 комментария
  • Что выбрать для CI/CD проектов на .net?

    Jenkins:
    - Бесплатный
    - Можно развернуть на Windows, что тебе нужно для net framework

    Ещё бы порекомендовал Teamcity - вроде первые несколько раннеров у него тоже бесплатные и он достаточно хорошо с .net интегрирован
    Ответ написан
    Комментировать
  • Стоит ли использовать lodash сейчас?

    0xD34F
    @0xD34F Куратор тега JavaScript
    Я так понимаю все что предлагает лодаш уже реализовано нативно

    Не понимаете.
    Ответ написан
    Комментировать
  • По какой логике bind принимает только первый контекст?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    Метод bind возвращает новую функцию, которая уже игнорирует свой контекст и передаёт тот, который запомнила.
    Если в коде, то это примерно так работает:
    Function.prototype.bind = function bind(ctx, ...args) {
        const originalFunction = this;
        return function (...args2) {
            return originalFunction.apply(ctx, args.concat(args2));
        };
    }
    Как видите, возвращаемая функция уже никак не использует свой this.
    Соответственно второй вызов bind его будет передавать в пустоту, однако может добавить аргументы.
    Ответ написан
    4 комментария
  • Насколько C# сейчас подходит для разработки под linux?

    @enavermate
    Нужно!
    Недавно сдали 12 месячный проект. ASP.NET5, MVC-framework, PostgreSQL, KestrelServer (начали проект спустя !4! месяца после выхода оного). Задачи: Сервер + REST API.
    Сначала хотели разместить на Azure, но что-то не заладилось.
    В итоге разместили на Linux'овом сервере.
    5 месяцев - полёт нормальный.
    Мануалов для конфигурирования от MS уже намного больше.
    Так что пишите - уже всё готово!
    Ответ написан
    Комментировать
  • Как выбрать между C# и Java?

    bingo347
    @bingo347
    Crazy on performance...
    Никто за Вас не решит.

    Могу поделиться своим субъективным ИМХО полиглота способного закодить многие вещи примерно на 15 различных ЯП - DX (Developer Experience) лучше у шарпа. Система типов будет понадежнее. Контракты на дженерики сделаны весьма хорошо (если бы я не знал Rust, то может и сказал бы, что отлично). Куча приятного сахара, вродеpublic int Field { get; private set; }или async/await или функциональных фишечек вроде замыканий (хотя в Java вроде тоже завезли уже)

    Но самое важное, шарп позволяет писать в любой из 3х парадигм (процедурщина, ФП, ООП) и успешно их комбинировать, а Java хоть и притворяется ООП языком, адекватно и не сожрав всю память пользователя на ней можно писать только процедурщину, пусть и в ООП обертке.
    Ответ написан
    3 комментария
  • Как выбрать между C# и Java?

    CellycoMobiles
    @CellycoMobiles
    indi developer @CellycoMobiles
    Выбирайте c# - порог вхождения ниже. Когда освоитесь будет проще выбрать Java, как дополнительный язык программирования. Но к этому времени станете высокооплачиваемым C# разработчиком.

    По вашим аргументам. Падение интереса к C# в РФ связано с уходом Макрософта из России. Поэтому так ярко выглядит.
    Красота синтаксиса, в современной Java все гораздо лучше шарпа. Или если любите синтакисческий сахар берите Kothlin.
    C# не обязательно только web и gamedev. Лично видел внутри одного банка приложение на шарпе. Есть одна студия, которая все свои продукты выпускает на шарпе. Да много где шарп применяется.

    + за C#
    Ответ написан
    Комментировать
  • Что из перечисленного является протоколом прикладного уровня?

    Https тоже должен считаться прикладным, раз это "http но с шифрованием".
    udp точно не прикладной.
    chrome и navigator - браузеры
    jpeg - формат картинок.

    => ответ http, https, ftp.
    Если это неправильный ответ - это уже ошибка составителя теста.
    Ответ написан
    7 комментариев
  • Нормально ли писать на C# на Linux Manjaro?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Да, вы можете спокойно работать на C# из различных ОС таких как Windows, Linux и MacOS. Для этого вы можете разрабатывать проекты на платформе .NET Core. .NET Core является кроссплатформенной, по этому вы можете писать, запускать, тестировать и разворачивать ваши приложения на .NET Core на любой из платформ. Ограничения по ОС есть только для .NET Framework, т.к. она "наглухо" привязана к Windows
    Ответ написан
    7 комментариев
  • Нормально ли писать на C# на Linux Manjaro?

    AshBlade
    @AshBlade Куратор тега C#
    Просто хочу быть счастливым
    Устанавливай .NET Core и разрабатывай на здоровье.
    Разница с Windows разве что в отсутствии оконных приложений, а остальные типы проектов есть.

    P.S. Visual Studio придется забросить и перейти либо на VS Code либо на Rider
    Ответ написан
    Комментировать
  • Фреймворки для кросс-платформенной разработки. Практикуют ли переписывание под разные платформы?

    AshBlade
    @AshBlade Куратор тега C#
    Просто хочу быть счастливым
    Windows Forms - это только Windows, т.к. он построен вокруг нативных системных вызовов Windows. Вообще-то я однажды писал Windows Forms для Linux, но там очень много было костылей и багов, поэтому - нет, не надо.

    Что касается кросс-платформенной разработки на C#.
    Если речь идет про разработку оконных приложений, то тут 2 варианта:
    - Avalonia UI - это кросс-платформенный фреймворк, разрабатываемый сообществом (не майкрософтом), очень похож на WPF. Есть почти все платформы
    - MAUI - это новый кросс-платформенный фреймворк, разрабатываемый майкрософтом. Он довольно новый, поддерживает множество платформ (по странице документации даже Linux (GTK#)). Но он довольно сырой и по отзывам очень много багов
    - WebAssembly/Blazor - фреймворк для создания PWA, веб-приложений, но можно и для мобильных приложений
    Ответ написан
    3 комментария
  • Как работать с компилируемым языком?

    При запуске ide, сначала нужно собрать: shift + f10, следом каждый раз мне нужно нажимать ctrl + f5.

    В гугле file watcher - там я могу указать только путь до .exe файла, это не то.

    dotnet watch run есть и hot reload.
    https://www.jetbrains.com/help/rider/Hot_Reload.html
    https://blog.jetbrains.com/dotnet/2022/09/12/jetbr...
    https://learn.microsoft.com/en-us/dotnet/core/tool...
    Ответ написан
    1 комментарий
  • Какой SSL-сертификат лучше использовать для стэйджинга?

    Let`s Encrypt , очевидно. Я вообще не понимаю, кому сейчас нужны покупные сертификаты, кроме банков и подобных структур, где наличие покупного сертификата вписано в регулятивные правила отрасли.
    Ответ написан
    Комментировать
  • Что означает оператор => в linq c#?

    Это не оператор, а стрелочка, которая отделяет аргументы анонимной функции от её тела.
    https://learn.microsoft.com/en-us/dotnet/csharp/la...

    Тоесть вот такой код создаёт функцию с единственным аргументом num, которая возвращает значение выражения num != 2.
    num=>num!=2

    Ведь эта строка на много проще

    Нет, не проще.

    Выбирай:
    var noTwo = nums.Where(x=>x != 2);
    // или
    var noTwo=from num in nums
                      where num!=2
                      select num;
    Ответ написан
    Комментировать
  • C# и несколько CPU?

    Adler_lug
    @Adler_lug
    Возможно функция считает только физические ядра, а не логические.
    Под рукой оказался двухпроцессорник на E5-2687W v4 (12 физических ядер на проц) с выключенным HT.
    Вот этот код на .Net 8 под Linux определяет все 24 ядра:
    namespace CPU_Counter
    {
        internal class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine($"The number of processors on this computer is {Environment.ProcessorCount.ToString()}.");
            }
        }
    }

    При чем я ничего подобного не правил. Дефолтный консольный проект .Net 8.
    Ut9692W.png
    Ответ написан
    2 комментария
  • Как понять что я выучил основы C#?

    CLR via C# открывай и иди по порядку, если хочешь глубже знать.
    Если прям минимальный минимум, то:
    1. Все стандартные управляющие конструкции: условия, циклы, итд.
    2. Типы: примитивные, ссылочные, значимые. Работа со строками.
    3. ООП: интерфейсы, наследование. Отличия между прямым и виртуальным вызовом
    4. BCL
    5. Linq: query синтаксис и через методы-расширения. Linq to IEnumerable, Linq to IQueryable и различия. Лямбды, делегаты, замыкания.
    6. Потоки, таски, async/await. Понимание различий между асинхронностью и многопоточностью. Синхронизация потоков.
    7. Всякие кишки: IL, рефлексия, emit, как работает JIT, как работает сборщик мусора.

    В принципе этого достаточно для уверенного использования
    Ответ написан
    6 комментариев