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

В последние годы растет популярность фреймворка для кроссплатформенной разработки приложений Flutter, а вместе с ним вторую жизнь получил и язык программирования Dart. Dart создавался как потенциальная замена JavaScript и мог бы занять нишу, которая се…

[Перевод] Как наиболее эффективно хранить и запрашивать сотни string-int словарей на одной машине. Часть 1

Эта статья повествует об эволюции структур данных, которые мы использовали при выполнении запросов в исторической части базы данных временных рядов Agoda, и демонстрирует примеры реализации нескольких дисковых индексных баз данных. Читать далее…

[Перевод] Темный путь

За последние несколько месяцев я попробовал два новых языка. Swift и Kotlin. Они имеют ряд общих черт. Действительно, сходство настолько разительное, что я задаюсь вопросом, не является ли это новой тенденцией в нашей лингвистической текучке. Если да, …

Упрощение сложной фильтрации в LINQ с помощью шаблона «Спецификация» и библиотеки XSpecification

Реализация и преимущества данного шаблона уже были описаны в нескольких статьях, но т.к. у меня в проекте уже была своя реализация, которая, на мой взгляд, удобнее и позволяет убрать кучу повторяющегося кода, то я решил поделиться своим вариантом (кото…

[Перевод] Зарубежный опыт: как избавиться от 80% кода, увеличить скорость разработки и уменьшить количество ошибок

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

Почему я против enum

Меня зовут Саша Терентьев, я из команды ленты ВКонтакте. В этой статье поделюсь мыслями о проблемах кода, где используются enum и сопоставления типов. Часто встречаю такой код в проектах, ресурсах, примерах….

[Перевод] Проектирование открытых социотехнических систем как преодоление сложности разработки программного обеспечения — Часть 1

Несмотря на попытки индустрии ICT (информационно-коммуникационных технологий) как можно быстрее адаптироваться и подстраиваться к нестабильной социальной и технической среде, в которой они оперируют, в условиях, когда рабочие требуют все большего, и гр…

[Перевод] О типах

Автор оригинального материала — Роберт С. Мартин (Uncle Bob), 25 июня 2021Я написал свою первую программу в 1964 году. Программа называлась «Компьютеризированные ворота мистера Паттерсона» и была реализована на маленьком пластиковом компьютере под назв…