Как стать автором
Обновить

Комментарии 5

Интересно, а почему вводят новый модификатор типа для nullable, а не для non-null типа?

Ведь разумнее же, что были типы без модификатора по сути nullable -- ну так и оставить их. Ну или хотя бы оставить семантику на время миграции:

string implicit_nullable;
string? explicit_nullable;
string! explicit_nonnull;

А уже спустя 2-3 версии (и года) сменить семантику для implicit объектов...

В решарпере можно было выбирать, как воспринимать нуллабельные объекты - оптимистично (то что без аннотаций - скорее всего не null) или пессимистично (то что без аннотации - скорее всего null).

Вроде для NRT есть что-то похожее при взаимодействии аннотированного и не-аннотированного кода, но я не уверен.

В подавляющем большинстве случаев требуется именно nonnull. Пришлось бы везде ! писать - этот некрасиво и неудобно.

Отличное видео! Можно добавить что, Александр там разбирается с тем, как можно использовать NotNull в своём проекте, т.к. от есть только в Standart 2.1. Начиная с Unity 2021 этот стандарт поддерживается

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории