«immutability» etiketlenmiş sorular

23
Değişmez nesneler iyiyse, insanlar neden değişken nesneler oluşturmaya devam ediyor? [kapalı]
Değişmez nesneler¹ iyi, basit ve eşzamanlı programlamada faydalar sağlıyorsa, programcılar neden değişken nesneler oluşturmaya devam ediyor? Java programlama konusunda dört yıllık bir deneyime sahibim ve gördüğüm gibi, insanların bir sınıf oluşturduktan sonra ilk yaptığı şey IDE'de alıcılar ve ayarlayıcılar üretmektir (bu nedenle değiştirilebilir hale getirmektir). Bir farkındalık eksikliği var mı …

6
Java 8 neden değişmez koleksiyonlar içermiyor?
Java ekibi, Java 8'deki işlevsel programlamanın önündeki engelleri kaldırarak bir sürü harika çalışma yaptı. Özellikle, java.util Collections'taki değişiklikler, çok hızlı akış işlemlerine dönüştürülmesi için büyük bir zincirleme işi yapıyor. Koleksiyonlara birinci sınıf işlevler ve fonksiyonel yöntemler ekleyerek ne kadar iyi yaptıklarını göz önünde bulundurarak, neden değişmez koleksiyonlar ve hatta değişmez …

6
Değişmezlik, JavaScript’teki performansı olumsuz etkiliyor mu?
JavaScript'te veri yapılarını değişmez olarak işleme yönelik son bir eğilim var gibi görünüyor. Örneğin, bir nesnenin tek bir özelliğini değiştirmeniz gerekirse, yeni özellikle yepyeni bir nesne oluşturmak ve eski nesneden diğer tüm özelliklerin üzerine kopyalamak ve eski nesnenin çöp toplanmasına izin vermek daha iyidir. (Bu zaten benim anlayışım.) İlk tepkim, …


4
Java koleksiyonları neden arayüzde "isteğe bağlı yöntemlerle" uygulandı?
Java koleksiyon çerçevesini genişleten ilk uygulamam sırasında, koleksiyon arayüzünün isteğe bağlı olarak bildirilen yöntemler içerdiğini görmekten çok şaşırdım. Uygulayıcının desteklenmiyorsa UnsupportedOperationExceptions atması bekleniyor. Bu hemen bir zayıf API tasarım seçimi olarak beni vurdu. Joshua Bloch'un mükemmel "Etkili Java" kitabının çoğunu okuduktan ve daha sonra bu kararlardan sorumlu olabileceğini öğrendikten sonra, …

5
Ne zaman akka / erlang'da oyuncu kullanmak iyi değil?
Akka ile günde 7-8 aydır çalışıyorum. Başladığımda, uygulamalar üzerinde çalışacak ve çoğu oyuncunun arasında iletişim kurmak için oyuncuların temelde bir kez aktör sisteminin içinde bir yerde kullanılacağını fark edecektim. Ben de aynısını yaptım - x / y / z için başka bir oyuncu daha döndürdüm. Bana öyle geliyor ki, bunun …

9
Eşzamanlılık olmadığında değişmezlik çok değerli midir?
İplik emniyetinin her zaman / sıklıkla değişmez türler ve özellikle koleksiyonlar kullanmanın ana yararı olarak bahsedildiği anlaşılmaktadır. Bir yöntemin bir dize sözlüğünü (C # ile değiştirilemez) değiştirmeyeceğinden emin olmak istediğim bir durum var. İşleri mümkün olduğunca sınırlandırmak istiyorum. Ancak yeni bir pakete (Microsoft Immutable Collections) bağımlılık eklemenin buna değip değmeyeceğinden …

2
Alan Kay, Küçük Tarihin Erken Tarihi'ndeki “ödev” ile ne demek istedi?
Smalltalk'ın Erken Tarihi'ni okuyordum ve anlamını anlamamı sorgulamama neden olan birkaç "ödev" belirtisi var: OOP birçok motivasyondan gelmesine rağmen, ikisi merkezi idi. Büyük ölçek, ayrıntıların gizlenmesini içeren karmaşık sistemler için daha iyi bir modül şeması bulmaktı ve küçük ölçek ise daha esnek bir atama sürümü bulmak ve ardından onu tamamen …

7
Tam değişkenlik ve Nesneye Dayalı Programlama
Çoğu OOP dilinde, nesneler genellikle sınırlı bir istisnalar kümesiyle değiştirilebilir (örneğin python'daki tuples ve stringler gibi). Çoğu işlevsel dilde, veriler değişmez. Değişebilir ve değişmez nesnelerin her ikisi de kendi avantajlarının ve dezavantajlarının bir listesini verir. Her iki kavramla da evlenmeye çalışan diller var; örneğin (açıkça ilan ettiğiniz) scala ve değişken …

5
Değişmezlik, çok işlemcili programlamada kilit ihtiyacını tamamen ortadan kaldırıyor mu?
Bölüm 1 Açıkça dokunulmazlık , çok işlemcili programlamada kilit gereksinimini en aza indirir , ancak bu ihtiyacı ortadan kaldırır mı, yoksa değişmezliğin tek başına yeterli olmadığı durumlar var mı? Bana öyle geliyor ki, çoğu program aslında bir şeyler yapmak zorunda kalmadan çok uzun bir süre önce işlemeyi erteleyebiliyor ve kapsülleyebiliyorsunuz …

7
Değişmez ve const arasındaki fark
Terimleri sık sık gördüm immutableve constbirbirlerinin yerine kullandım. Ancak, (küçük) tecrübelerime göre, ikisi kodda yaptıkları 'sözleşmede' çok farklıdır: Immutable, bu nesnenin hiçbir şekilde değişmeyeceği sözleşmesini yapar (örneğin Python tuples, Java dizeleri). Const, bu değişkenin kapsamında değiştirilmeyeceğine dair sözleşmeyi yapar (bu süre içinde, örneğin C / C ++ anahtar sözcüğü gibi …

5
Değiştirilemez nesneler için arayüzleri bildirmeyin
Değiştirilemez nesneler için arayüzleri bildirmeyin [EDIT] Söz konusu nesnelerin Veri Aktarım Nesnelerini (DTO'lar) veya Eski Eski Verileri (POD) temsil ettiği yerlerde Bu makul bir rehber mi? Şimdiye kadar, çoğu zaman mühürlü sınıflar için değişmeyen arayüzler oluşturdum (veriler değiştirilemez). Değişkenliğe önem verdiğim yerde arayüzü kullanmamaya özen göstermeye çalıştım. Ne yazık ki, …
27 c#  immutability 

7
Bağlantılı bir düğüm yapısının değişmez olmasının pratik bir yolu var mı?
Tek bağlantılı bir liste yazmaya karar verdim ve iç bağlantılı düğüm yapısını değiştirilemez hale getirme planım vardı. Yine de bir engelle karşılaştım. Aşağıdaki bağlantılı düğümlere sahip olduğumu söyleyin (önceki addişlemlerden): 1 -> 2 -> 3 -> 4 ve eklemek istediğimi söyle 5. Bunu yapmak için, düğüm 4değişmez olduğu için, yeni …

8
Veri Tabanı Tasarımında İmkansızlığın Artırılması
Joshua Bloch'un Etkili Java'sındaki öğelerden biri, sınıfların örneklerin mümkün olduğunca az ve tercihen hiçbir şekilde mutasyona izin vermesi gerektiği düşüncesidir. Çoğu zaman, bir nesnenin verileri bir biçimde bir veritabanına devam eder. Bu, özellikle daha büyük bir sistemdeki tek bir varlığı temsil eden tablolar için, bir veri tabanındaki değişmezlik fikrini düşünmeme …


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.