Как стать автором
Поиск
Написать публикацию
Обновить
0
@Dis_alread⁠-⁠only

Пользователь

Отправить сообщение

Сто паттернов для разработки корпоративных программ. Часть первая

Уровень сложностиСредний
Время на прочтение27 мин
Количество просмотров24K

В этой статье рассмотрены все паттерны проектирования из "Банды четырёх" с примерами на языке программирования C#. Для самых терпеливых имеются дополнительные паттерны.

Это первая статья из серии "Сто паттернов для разработки корпоративных программ". Следующие статьи будут посвящены паттернам из книг Мартина Фаулера и Роберта Нистрема.

Читать далее

Синхронизация операций в .NET на примерах

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров16K

Всем привет. Сегодня я расскажу об инструментах, которые существуют в .NET для параллельной работы с какими-то внешними ресурсами и приведу примеры, где и как их можно применить.

При параллельной работе с каким-то ресурсом, нам нужно синхронизировать доступ к нему, чтобы не попасть в состояние годнки или банально не перегрузить его. Для этого в .NET существуют следующие вещи:

Читать далее

Регулярные выражения изнутри

Время на прочтение5 мин
Количество просмотров125K
Регулярные выражения (РВ) — это очень удобная форма записи так называемых регулярных или автоматных языков. Поэтому РВ используются в качестве входного языка во многих системах, обрабатывающих цепочки. Рассмотрим примеры таких систем:

  • Команда grep операционной системы Unix или аналогичные команды для поиска цепочек, которые можно встретить в Web-броузерах или системах форматирования текста. В таких системах РВ используются для описания шаблонов, которые пользователь ищет в файле. Различные поисковые системы преобразуют РВ либо в детерминированный конечный автомат (ДКА), либо недетерминированный конечный автомат (НКА) и применяют этот автомат к файлу, в котором производится поиск.
  • Генераторы лексических анализаторов. Лексические анализаторы являются компонентом компилятора, они разбивают исходную программу на логические единицы (лексемы), которые могут состоять из одного или нескольких символов и имеют определенный смысл. Генератор лексических анализаторов получает формальные описания лексем, являющиеся по существу РВ, и создает ДКА, который распознает, какая из лексем появляется на его входе.
  • РВ в языках программирования.


В данной статье мы сначала ознакомимся с конечными автоматами и их видами (ДКА и НКА), и далее рассмотрим пример построения минимального ДКА по регулярному выражению.
Читать дальше →

Удачная модель ветвления для Git

Время на прочтение10 мин
Количество просмотров1M
Перевод статьи Vincent Driessen: A successful Git branching model

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



В качестве инструмента управления версиями всего исходного кода она использует Git.

Читать дальше →

Введение в ReactiveUI: прокачиваем свойства во ViewModel

Время на прочтение8 мин
Количество просмотров54K
В своих C# проектах при реализации GUI я часто использую фреймворк ReactiveUI.

ReactiveUI — полноценный MVVM-фреймворк: bindings, routing, message bus, commands и прочие слова, которые есть в описании почти любого MVVM-фреймворка, есть и тут. Применяться он может практически везде, где есть .NET: WPF, Windows Forms, UWP, Windows Phone 8, Windows Store, Xamarin.

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

Краткое описание терминов С#

Время на прочтение17 мин
Количество просмотров29K

Здесь можно найти ответы (в виде описания терминов) на вопросы в этой статье, к вакансии Unity мидл программист. Или попросту узнать что-нибудь новенькое. Статья будет постепенно дополнятся (возможно простейшими примерами).

Изучать

IoC, DI, IoC-контейнер — Просто о простом

Время на прочтение4 мин
Количество просмотров480K
Думаю сейчас слова IoC, DI, IoC-контейнер, как минимум у многих на слуху. Одни этим активно пользуются, другие пытаются понять, что же это за модные веяния.

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

Вопросы на собеседовании к вакансии Middle Unity-разработчик + полезная информация

Время на прочтение9 мин
Количество просмотров30K

Некоторое время назад пытался устроиться на подобные вакансии (меня не взяли). Но теперь есть список вопросов, которые помогут подготовиться и углубиться в мир программирования (список вопросов взят из самого долгого интервью, остальные были в разы короче).

Читать и радоваться

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Software Developer, Backend Developer