Защо променливостта е лоша?

Съдържание:

Защо променливостта е лоша?
Защо променливостта е лоша?
Anonim

Отговорът е, че неизменните типове са по-безопасни от грешки, по-лесни за разбиране и по-готови за промяна. Променливостта прави по-трудно да разберете какво прави вашата програма и много по-трудно да наложите договори.

Лоши ли са променящите се обекти?

Накрая, променящите се обекти са убийци в едновременни ситуации. Всеки път, когато осъществявате достъп до променлив обект от отделни нишки, трябва да се справите със заключването. Това намалява пропускателната способност и прави кода ви драстично по-труден за поддръжка.

Защо споделеното състояние е лошо?

Споделеното променливо състояние работи по следния начин: Ако две или повече страни могат да променят едни и същи данни (променливи, обекти и т.н.). И ако животите им се припокриват. Тогава съществува риск промените на едната страна да попречат на другите да работят правилно.

Защо неизменността е добро нещо?

Освен намаленото използване на паметта, неизменимостта ви позволява да оптимизирате приложението си, като използвате равенството на референтните и стойностите. Това прави наистина лесно да се види дали нещо се е променило. Например промяна на състоянието в компонент за реакция.

Какви са недостатъците на неизменността?

Единственият реален недостатък на неизменяемите класове е, че те изискват отделен обект за всяка отделна стойност. Създаването на тези обекти може да бъде скъпо, особено ако са големи. Например, да предположим, че имате милиони битово BigInteger и искате да промените неговия бит от нисък ред:BigInteger moby=…; moby=moby.

Препоръчано: