• gRPC Часть №1 — .NET C# и Google Protobuff. Знакомство.

    23 апреля, 2018 DEV

    Так исторически сложилось, что на текущей моей работе весь стек бекенда состоял изначально из GoLang и .NET. Так начинался наш проект, к  слову, абсолютно для меня экспериментальный — новый виток карьеры (в профессиональном плане). До этого момента я был полностью и целиком desktop-разработчиком под Windows (а ещё до этого десктоп QT и Linux). Я не…

    Read more
  • Антипаттерн №2 — Спагетти-код (Spaghetti code)

    21 апреля, 2018 DEV

    Когда-то давно, когда компьютеры были большими, а программы маленькими — существовал единственный возможный способ написания кода. При помощи интерпретатора (если повезёт) выполнялась какая-либо вбиваемая программа. Строчка-за-строчкой. Людей, которые писали бы подобные листинги было невероятно мало, мирового опыта и понимания КАК НАДО ещё не было сформировано — ни методологий и никаких правил. Каждый был творцом собственного…

    Read more
  • Антипаттерн №1 — Магическое число (Magic Number)

    18 апреля, 2018 DEV

    Из всего многообразия грехов разработки магическое число (magic number) — это, пожалуй, самый распространённый антипаттерн. Греховность его можно оценить как лёгкую, т.к., в целом, данный методологический изъян лёгок в обнаружении и устранении. Магическое число — это оперирование явно указанными в коде коэффициентами (как правило целочисленными), значение и смысл которых знает только автор программы. Как правило,…

    Read more
  • Semver — семантическое версионирование

    11 декабря, 2017 DEV

    Сегодня хочется затронуть важную и сложную тему — версионирования программного обеспечения. В сегодняшних реалиях, когда код пишется в поражающем по скорости темпе, когда проекты декомпозируются в взаимосвязанные микросервисы, а ежедневные обновления фреймворков и библиотек требуют особого инфраструктурного внимания — рано или поздно вас настигает проблема контроля зависимостей. В этих жестких условиях постоянных изменений очень важно…

    Read more
  • Интеграция GIT и Visual Studio

    6 декабря, 2017 DEV

    Не представляю, как мы когда-то все жили без GIT. Подобный интерфейс взаимодействия с кодом рано или поздно должен был произойти и, нам повезло, эволюционно у нас появился GIT. Инструмент, который полностью поменял и перевернул мир разработки, вынесший написание кода и работу с листингом на кардинально новый, более высокий уровень. Разработка вышла из локальных групп и…

    Read more
  • Реализация очереди при помощи массива на языке C#

    26 октября, 2017 DEV

    Совсем недавно я рассказывал про базовую структуру данных очередь. И, как обещал, от теории переходим к практике. Сегодня хочу показать как реализовать алгоритм очереди нативными средствами языка C#. Замечу, что собственная реализация подобных базовых структур, как правило, избыточный овер инжиниринг и не нужный велосипед. Всё уже давно реализовано, наверное, для всех платформ и на всех…

    Read more
1 2