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

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

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

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

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

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

Улучшенный бинарный поиск

Задача: Имеется 8 с виду одинаковых монет. Одна из них фальшивая и известно, что она легче настоящей. Как с помощью всего лишь двух взвешиваний найти фальшивую монету? В Вашем распоряжении аптекарские весы без гирь, которые показывают только легче-тяжелее. Решение: Делим

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

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

Паттерны проектирования

Наблюдатель Объекты в курсе событий Нельзя оставаться в неведении, когда происходит что-то интересное. Наблюдатель – это поведенческий паттерн проектирования, который создаёт механизм подписки, позволяющий одним объектам следить и реагировать на события, происходящие в других объектах. Декоратор Украшение объектов Взгляд на архитектуру для любителей

События на C#

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