Публикации по теме 'immutability'
Неизменяемые объекты в Java с использованием шаблона Builder с функциональным интерфейсом
Неизменяемые объекты в Java с использованием шаблона Builder с функциональным интерфейсом
Почему важны неизменяемые объекты
Неизменяемые объекты в Java — это объекты, состояния которых нельзя изменить после создания. Этот атрибут неизменности дает несколько преимуществ:
Потокобезопасность. Неизменяемые объекты по своей природе потокобезопасны, поскольку их состояние не может измениться после создания. Это делает их подходящими для многопоточных сред, где важны синхронизация и..
Оптимизация крупномасштабных табличных данных и решение проблем с мутациями
В прошлом году я работал с React, в основном создавая веб-приложение для управления проектами в реальном времени (даже будучи бэкенд-разработчиком, я думал, что важно помочь команде решить эту проблему).
Наше приложение использует нашу таблицу , которая является нашей основной функцией , и с тех пор мы пытаемся оптимизировать скорость обновлений (используя оптимистическое обновление) и виртуализацию, но это было нелегко.
Когда мы говорим о нашей Таблице , это не просто таблица, это..
В Python все является объектом: изменяемые и неизменяемые типы данных
Вступление
Python - это интерпретируемый язык программирования высокого уровня, и все является объектом от целого числа, которое вы определяете, простой строки, которую вы отображаете, до персонализированного класса, который вы создаете. Другими словами, все, что вы определяете как экземпляр класса и переменных, - это просто «имена» или «метки», которые мы используем для вызова этих экземпляров. Чтобы узнать причину этого подхода «все является объектом», вот цитата Гвидо Ван Россума..
Вопросы по теме 'immutability'
Требуется ли блокировка с ленивой инициализацией глубоко неизменяемого типа?
Если у меня есть глубоко неизменяемый тип (все члены доступны только для чтения, а если они являются членами ссылочного типа, то они также относятся к объектам, которые являются глубоко неизменяемыми).
Я хотел бы реализовать ленивое...
2380 просмотров
schedule
24.04.2022
Является ли BigInteger неизменным или нет?
В .NET 4 beta 2 появилось новое пространство имен Numerics с struct BigInteger . В документации указано, что это неизменяемый тип, как я и ожидал.
Но меня немного смущает оператор постинкремента ( ++ ). Это определенно, кажется, мутирует...
1668 просмотров
schedule
11.06.2022
Неизменность и гибкость - плохая смесь?
В моем небольшом игровом фреймворке, созданном с нуля, я определил класс под названием ThreeDPoint, который несет набор координат x, y и z для отслеживания моих игровых объектов, называемых Актерами. Я также использую этот класс для создания векторов...
592 просмотров
schedule
22.08.2022
Изменяемый класс как дочерний элемент неизменяемого класса
Я хочу иметь такие неизменяемые объекты Java (сильно упрощенные):
class Immutable {
protected String name;
public Immutable(String name) {
this.name = name;
}
public String getName() {
return name;
}
}...
4463 просмотров
schedule
16.04.2024
Как мне переписать список, если его типы данных неизменяемы?
Я привыкаю использовать списки для инициализации моего приложения. Теперь я хочу сохранить состояние приложения обратно в список, используемый для инициализации приложения, и я застрял. При запуске приложения я загружаю список в неизменяемый...
585 просмотров
schedule
09.09.2023
Почему Microsoft не рекомендует использовать поля только для чтения с изменяемыми значениями?
В Руководстве по проектированию для разработки библиотек классов Microsoft говорится:
Не назначайте экземпляры изменяемых типов полям, доступным только для чтения.
Объекты, созданные с использованием изменяемого типа, могут быть...
3053 просмотров
schedule
01.07.2022
Должны ли поля быть явно окончательными, чтобы иметь правильный неизменяемый объект?
Вы часто читали о неизменяемых объектах, требующих неизменяемости конечных полей в Java. Так ли это на самом деле, или достаточно просто не иметь общедоступной изменчивости и фактически не изменять состояние?
Например, если у вас есть неизменяемый...
330 просмотров
schedule
24.09.2022
С# удалить пробел из переменной
Моя переменная выглядит так:
name = "Lola "; // notice the whitespace
Как я могу удалить пробел в конце, чтобы оставить только «Лола»?
Всем спасибо, но .Trim() у меня не работает.
Я прочитал текст из...
3203 просмотров
schedule
20.12.2022
Неизменяемость после внедрения зависимостей, инициализация
Я хотел бы иметь возможность указать, что переменные-члены объекта являются неизменяемыми после того, как объект был «инициализирован», что для меня означает после того, как он был введен с любыми зависимостями и выполнил любые другие операции...
4045 просмотров
schedule
16.11.2023
Почему объект System.String может не кэшировать свой хеш-код?
Взгляд на исходный код для string.GetHashCode с использованием Reflector показывает следующее (для mscorlib.dll версии 4.0):
public override unsafe int GetHashCode()
{
fixed (char* str = ((char*) this))
{
char* chPtr = str;...
3321 просмотров
schedule
20.04.2022
F# Неизменяемая структура данных окна переменного размера
Ниже у меня есть описание структуры данных, которая мне нужна, и я хочу реализовать ее, используя неизменяемые структуры данных. Я пытаюсь определить... существует ли существующая структура данных, которая будет поддерживать то, что я здесь пытаюсь...
239 просмотров
schedule
10.02.2023
Каков наилучший способ представления неизменяемого списка в .NET?
Недавно я начал использовать F# для «настоящей работы» и вновь открыл для себя красоту неизменяемых структур данных, таких как размеченные объединения и записи в F#. Я также обнаружил, что их довольно просто использовать из C#, особенно потому, что...
1134 просмотров
schedule
03.05.2022
Является ли это действительной реализацией Java неизменяемого класса и шаблона Builder?
Построитель реализует Cloneable и переопределяет clone(), и вместо копирования каждого поля построителя неизменяемый класс сохраняет частный клон построителя. Это упрощает возврат нового компоновщика и создание слегка измененных копий неизменяемого...
1622 просмотров
schedule
02.10.2023
Контракт Equals () для .NET Dictionary / IDictionary vs контракт equals () для Java Map
Ностальгируя по Collections.unmodifiableMap() , я реализовал оболочку IDictionary только для чтения на основе это обсуждение , и мой модульный тест быстро натолкнулся на проблему:
Assert.AreEqual (backingDictionary, readOnlyDictionary);...
1806 просмотров
schedule
13.12.2022
.NET ORM, объекты неизменяемых значений, структуры, конструкторы по умолчанию и свойства только для чтения
Я только начинаю работать с .NET ORM до такой степени, что даже не решил между Entity Framework и NHibernate. Но в обоих случаях я сталкиваюсь с проблемой, заключающейся в том, что они, кажется, хотят, чтобы я различными способами нарушил целостность...
612 просмотров
schedule
03.01.2024
Действительно ли чисто функциональные языки гарантируют неизменность?
На чисто функциональном языке нельзя было еще определить оператор «присваивания», скажем «‹ - », так, чтобы команда, скажем,« i ‹- 3», вместо прямого присвоения неизменяемой переменной i, создавала копию всего текущего стека вызовов, за исключением...
691 просмотров
schedule
20.05.2022
Язык D ; структуры, неизменяемые данные и странная ошибка
Я изучаю язык D. Моя первая попытка - это простой 2d-вектор, который я могу складывать, вычитать, скалярное произведение и т. Д. У меня есть эта ошибка, когда я пытаюсь скомпилировать:
Ошибка :
Ошибка: (Vector2d __ctmp1245 =...
365 просмотров
schedule
13.02.2022
Есть ли в Scala синтаксис обновления записей для создания модифицированных клонов неизменяемых структур данных?
В Mercury я могу использовать:
A = B^some_field := SomeValue
чтобы связать A с копией B, за исключением того, что some_field является SomeValue вместо того, что было в B. Я считаю, что эквивалент Haskell выглядит примерно так:
a = b {...
1698 просмотров
schedule
18.04.2022
видимость неизменяемого объекта после публикации
У меня есть неизменяемый объект, который заключен в классе и является глобальным состоянием.
Допустим, у меня есть 2 потока, которые получают это состояние, выполняют с ним myMethod(state). И скажем, thread1 финиширует первым. Он изменяет...
643 просмотров
schedule
19.05.2023
Что означает неизменяемый и только для чтения в С#?
Правильно ли, что невозможно изменить значение неизменяемого объекта?
У меня есть два сценария относительно readonly , которые я хочу понять:
Что, если у меня есть коллекция и я помечаю ее как readonly , как показано ниже. Могу я еще...
11696 просмотров
schedule
05.01.2023