Undo, Redo for ToDoList – вопросы с собеседования

> Третий вопрос, задание на собеседовании программера C# оказалось сложным для меня и в этот раз было такое: Создать класс “ToDoListControl” с поддержкой действий undo (ctrl+z) и redo (ctrl+y). abstract class ToDoListControlBase { protected readonly ToDoModel model = new ToDoModel();

Ссылочный тип – вопросы с собеседования

Первый, самый простой вопрос на собеседовании разработчика на C#. Как обычно, конечно, типа с подвохом, и конечно из 2-х частей. Первая часть вопроса: Что выведет в консоль этот код? class Number { public int Value; public Number(int val) { Value

Singleton – вопросы с собеседования

> На очередном собеседовании второй вопрос, не первый, первый был про ссылочные типы данных, так вот второй воприк был такой: Реализуйте потокобезопасный Singleton Сразу скажу, что, конечно, этот вопрос не поставил меня в тупик, я знал, что такое Одиночка, но

Логирование на форму из глубин кода

> Если вы накодили на C# так, что одновременно несколько потоков (Thread) работают параллельно, и то что они там делают вам надо как то отлаживать и тестировать, то возможно вам пригодиться такой вариант реализации логера, который пишет сообщения на форму

Валидация ввода данных TextBox WinForms

На примере стандартной задачи валидации ввода данных в проекте на WinForms рассмотрим ряд интересных технических приемов, в частности для работы с потоками, которые могут пригодиться и для других задач. Итак, предлагаем пользователю заполнить 4-е текстовых поля, двух типов данных. Два

Ad hoc Полиморфизм в C#

Полиморфизм (от греч. poly — много и morphe — форма) — один из главных столпов объектно-ориентированного программирования. Его суть заключается в том, что методы с одинаковой сигнатурой могут выполнять разные действия. Например, все животные могут подать голос, у всех есть

События на C#

Алан Кэй придумал ООП, и мы смогли разделить код на классы. Еще более умные люди дали возможность простым смертным кодить так, что бы классы могли создаваться и что то делать в разных потоках, но дальше что то пошло не так. Появилась

Создаем свою нейросеть прямого распространения

Нейросети кажутся людям чем-то очень сложным и запутанным, однако это вовсе не так. Простую нейросеть можно написать менее чем за час с нуля. В нашей статье мы создадим нейронную сеть прямого распространения (также называемую многослойным перцептроном), используя лишь массивы, циклы

CORS policy in IIS

Допустим ваш сайт, с именем CryptoAlertEmailConfirm.mizerov.com хочет обратиться за данными с помощью jQuery get к другому вашему сайту с именем CryptoAlert.mizerov.com вот таким образом let pars = new URLSearchParams(window.location.search); if (pars.has(‘id’)) { let id = pars.get(‘id’); $.get(“https://cryptoalert.mizerov.com/api/EmailConfirm/” + id, function

C# Class to Send PUSH Notifications

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