Обновить
56
0
Михаил @lam0x86

Пользователь

Отправить сообщение
Ну мы же говорим про программирование, а не про то, как можно хакнуть систему. Если разработчики API опустились до того, чтобы кастить интерфейсы к конкретной имплементации (это должно быть уголовно наказуемо), то что им стоит через рефлекшн изменить private поля ImmutableList'а и добавить туда свой элемент?
Конечно, UnmodifiableList — более слабая абстракция, чем ImmutableList, но, учитывая накладные расходы и здравый смысл разработчиков, она всё же имеет место быть. Как уже было отмечено выше, в .NET-е уже давно есть IReadOnlyList, а относительно недавно появился и IImmutableList, и они отлично уживаются вместе, и никакие API не требуют строго IImmutableList на входе — чаще всего, ограничиваются IReadOnlyList (или ещё более ослабляют контракт до IReadOnlyCollection или даже до IEnumerable). Если вы не доверяете тому API, что вызываете, то всегда можно передать туда не ArrayList, а ImmutableList, и тогда этот злой API не сможет его скастить в List.
Допустим, у вас есть класс A, который часто модифицирует некую коллекцию и иногда вызывает API для подсчёта статистики по этой коллекции. По хорошему, API должен гарантировать неизменность коллекции. Для этого, на вход следует принимать UnmodifiableList, чтобы декларировать неизменяемость.

ImmutableList в данном случае будет оверхэдом с точки зрения класса A, т.к. приводит к копированию массива или перестроению дерева (в зависимости от внутренней реализации ImmutableList-а) при каждой модификации коллекции.

Смысл UnmodifiableList'а не в том, что он не может измениться извне, а в том, что передавая его в какой-то метод, ты можешь быть уверен, что после выхода из метода лист останется тем же.

Ну, это внутренний враппер. Я имел в виду публичный класс или интерфейс, который может использовать программист.
Такого типа в джаве просто нет. Собственно, его автор и предлагает ввести.
Так и в джаве List — это интерфейс.
Так в статье как раз и написано про IReadOnlyList, только называют его UnmodifiableList.
Насчёт рабочего оборудования, кстати, вопрос: если я пишу код из дома, подключаясь к рабочей сети по VPN, что в этом случае говорит закон? Всё, что написано в рабочее время, является интеллектуальной собственностью компании, а остальное — моё?
Почему бы не сделать отдельную версию для бета-тестеров и открыто уведомлять их о том, что их разговоры могут быть записаны и проанализированы третьими лицами? Можно даже доплачивать за это.
Как часто надо расставлять анкоры? Я правильно понимаю, что это какая-то псевдо-виртуализация? Для каждой строки таблицы создаётся контейнер, и для каждой n-ной добавляется якорь для нотификации о появлении на экране? А не поздновато ли рендерить, когда элемент уже на экране? И как это будет работать с миллионами строк?
Вангую: через год-два появятся AI-трекеры типа видео-няни, анализирующие положение тела, дыхание и другие факторы по видео и аудио. И все эти клипсы на подушки уйдут в небытие.
Спасибо за предложение, но я забил на пикабу) Не из-за бунта, а просто надоели одинаковые посты про политоту, ЖКХ и таксистов.
Точно не помню цифры, но в десктопной версии подгружается по 300 комментов за запрос, а в мобильной по 100, кажется.
Про ддос в курсе) но и парсер можно написать так, что он заддосит любой сайт) Было время, когда некоторые поисковые роботы расценивали поддомены как отдельные ресурсы и клали сайты в попытках индексации.
Ну, перезапущу как-нибудь, проверю за три месяца. Парсер свой написал. А как ты считаешь, кто ставит плюсы-минусы? Профили всех пользователей проверяешь?
Мой парсер медленный — парсит с одного IP, по одному запросу в секунду. Не заморачивался с прокси, да и нехорошо это — ддосить сайты, могут забанить. Зато, получил официальный аппрувал на парсинг.
Я пару месяцев назад писал парсер комментариев пикабу. Там активных пользователей (у кого есть хотя бы один коммент) в месяц около 70 тысяч у меня вышло. Ушли на реддит скорее всего как раз активные.

Может, мы на разных планетах живём, но не соглашусь с вами. Едва ли хватает скорости, чтобы новости почитать. Про видео вообще не говорю.

Платные тарифы отличаются только отсутствием рекламы. Связь такая же ужасная.

Что уж там. Самой большой ошибкой человечества было изобретение колеса. Ведь бегали же нормально, зачем что-то придумывать!

Привет, Альфа! Событие ещё в силе? Зарегистрировались с коллегой полторы недели назад, но приглашение так и не пришло, а меж тем, дата проведения уже на подходе, меньше недели осталось.
Согласен. Если строить аналогии, то в реальной жизни это скорее похоже на Лепразорий. Напомню, был такой некогда известный ресурс dirty.ru, который банил «плохих» пользователей, но разрешал им общаться только в закрытом сообществе. В итоге, из сообщества выросла отдельная субкультура, ставшая более популярной, чем изначальный ресурс. Думаю, это примерно похоже на то, что ожидает Китай, если эксперимент зайдёт слишком далеко.

Информация

В рейтинге
5 012-й
Откуда
Москва и Московская обл., Россия
Зарегистрирован
Активность