Size: a a a

var chat = new Chat();

2021 September 13

E

Etki in var chat = new Chat();
Хэшмап это dictionary в нашей джаве
Там есть N бакетов, N это степень двойки
Вместо того чтобы вычислять бакет по x.GetHashCode() % N можно сделать x.GetHashCode() & (N - 1), и это будет эффективней, и это в сорс коде джавы
Меня там впрямую спрашивали - остаток от деления это хорошо, но какая bitwise-операция будет лучше, учитывая что там степень двойки? А я не допер.
источник

VL

Vova Lantsov in var chat = new Chat();
Это мне кстати не зашло, конструктор делает неудобный
источник

VL

Vova Lantsov in var chat = new Chat();
И атрибуты когда вешаешь то они на параметр конструктора вешаются, а не на свойство
источник

VL

Vova Lantsov in var chat = new Chat();
Я юзаю рекорды как класс визуально
источник

Ɖ

Ɖrēw in var chat = new Chat();
Ну в 99% случаев мне нужно именно так
источник

VL

Vova Lantsov in var chat = new Chat();
Иммутабельные типы делают
Это просто небольшой сахар
Но он даёт тебе защиту от случайной перезаписи где не нужно, а где нужно - явно юзаешь with { }
источник

VL

Vova Lantsov in var chat = new Chat();
Но опять же если использовать with { } то будет создан новый обьект
Поэтому не нужно пихать рекорды повсюду как будто это что-то незаменимое
источник

VL

Vova Lantsov in var chat = new Chat();
А ещё кстати рекорды за тебя реализуют GetHashCode, Equals и прочие стандартные методы сравнения
источник

Ɖ

Ɖrēw in var chat = new Chat();
Использовать рекорды не позиционные мне видится далеко не таким полезным и лаконичным
источник

AS

Alex SAS in var chat = new Chat();
вот тут согласен, что индивидуальный подход нужен
надо будет подумать и возможно где то лучше реально рекордс применить
источник

MN

Mr. N in var chat = new Chat();
а зачем имутабельность?
источник

VB

Vladislav Bardin in var chat = new Chat();
А зачем рекорды?)
источник

MN

Mr. N in var chat = new Chat();
Это не F#)
источник

VL

Vova Lantsov in var chat = new Chat();
Я чаще всего юзаю их для моделей контроллера (тобишь из json десериализация), либо для моделей бд (ef core), либо в либах при работе с тем же json и HttpClient
источник

MN

Mr. N in var chat = new Chat();
удобно
источник

Ɖ

Ɖrēw in var chat = new Chat();
И?
источник

Ɖ

Ɖrēw in var chat = new Chat();
Ты хоть понимаешь зачем она нужна и какие проблемы решает?
источник

VL

Vova Lantsov in var chat = new Chat();
Суть иммутабельности никак не привязана к языку)
источник

Ɖ

Ɖrēw in var chat = new Chat();
А, пардон
источник

MN

Mr. N in var chat = new Chat();
источник