Обновить
1
0

.Net Middle Backend Developer

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

Соглашусь. Но есть дополнительные методы расширения которые реализуют аналог While + можно использовать контекст через замыкание

Лучше сделать как в C# единый интерфейс IEnumerble для всех коллекций и методы расширения.

Linq лучше и удобнее чем tailreq

Было бы не плохо если бы вы делали еще статьи по написанию кода на Scala.

Например как написать микросервис на Scala:

Маршрутизация Rest API

Входные модели и валидация

Слой бизнес логики

Слой доступа к данным

Выходные модели и маппинг

Как построить структуру проекта, какая архитектура используется.

Как создать воркер-консюмер раббита или кафки.

Пора бы уже Scala 4.

Почему на Java Based языках все реализации ORM такие убогие

После EF Core выглядит довольно убого

Статья на уровне HelloWorld/

Чтобы это статья была действительно полезной нужно описать как создавать:

контроллеры

эндпоинты (GET\POST хотя бы)

как биндить параметры(примитивы и модели) из Route, Params, Body, Form.

Описать как производится валидация полей.

Следующей статьёй можно было бы описать фреймворк для работы с бд:

Создание доменных моделей

Создание конфигов моделей(Настройка полей, типов, PK, индексов, внешних ключей, отношений)

Чтение из бд включая с динамическими запросами с Where \ GroupBy\ OrderBy.

Как производится включение в запрос связанных сущностей

Создание \ Обновление \ Удаление

Когда понадобятся сложные динамические запросы будет боль и печаль

Проект не особо соответствует чистой архитектуре. Интрефейсы не выделены, сервисы и код связанный с БД в одном проекте.

От чистой архитектуры только пара названий.

Для логов, метрик и готовых аналитических витрин идеально подходит.

Мне нравится для логов - LSM-Tree + TLL + PARTITION BY toYYYYMM(DATE).

YDB под Windows Server?

Я про Scala => Java => Oracle

А библиотек - контейнеров DI нет?

На данный момент 5 вакансий по всей России

Потому что Microsoft это фуфуфу, а Oracle православный

Scala - сложнее.

Сложный код на Scala 1.5-2 раза больше.

Scala расходует больше памяти изза Immutable Scala Way.

Коллекции в Scala имеют более высокую алгоритмическую сложность изза иммутабельности.

Scala - легаси, большинство проектов так и остались на Scala 2.

Scala - убогая экосистема и зоопарк библиотек на коленке.

Начиная с 24.3 версии там новое лицензирование, которое требует ключ для кластера.

ULID не корректно сортируется на MS SQL SERVER.
ULID предполагает сортировку слева на право (левая сторона дата)
Если вы создатите таблицу с uniqueidentifier и DateTime, а затем вставите в нее данные в хронологическом порядке (ULID и дата созданные в одно время)
То вы увидите что даты идут в случайном порядке.
Также мои тесты с бенчмарком показали что время вставки имеет большой разброс от 2 до 22 секунд на вставку 100_000 строк.
Если вы будете конвертировать ваш ULID в string => nvarchar(26) то он будет сортироватся корректно.

ULID не корректно сортируется на MS SQL SERVER.
ULID предполагает сортировку слева на право (левая сторона дата)
Если вы создатите таблицу с uniqueidentifier и DateTime, а затем вставите в нее данные в хронологическом порядке (ULID и дата созданные в одно время)
То вы увидите что даты идут в случайном порядке.
Также мои тесты с бенчмарком показали что время вставки имеет большой разброс от 2 до 22 секунд на вставку 100_000 строк.
Если вы будете конвертировать ваш ULID в string => nvarchar(26) то он будет сортироватся корректно.

ULID не корректно сортируется на MS SQL SERVER.
ULID предполагает сортировку слева на право (левая сторона дата)
Если вы создатите таблицу с uniqueidentifier и DateTime, а затем вставите в нее данные в хронологическом порядке (ULID и дата созданные в одно время)
То вы увидите что даты идут в случайном порядке.
Также мои тесты с бенчмарком показали что время вставки имеет большой разброс от 2 до 22 секунд на вставку 100_000 строк.
Если вы будете конвертировать ваш ULID в string => nvarchar(26) то он будет сортироватся корректно.

1

Информация

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

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

Бэкенд разработчик, Разработчик баз данных
Старший
От 250 000 ₽
C#
.NET
ASP.NET
ASP.NET MVC
Microsoft SQL
Entity framework
SQL
Базы данных
Git
Docker