Khác biệt giữa bản sửa đổi của “Đối tượng bất biến”
Dịch từ bài viết Anh |
(Không có sự khác biệt)
|
Phiên bản lúc 02:25, ngày 25 tháng 5 năm 2017
Trong lập trình hướng đối tượng và hàm, đối tượng bất biến (tiếng Anh: immutable object hay unchangeable object)[1] là một đối tượng mà trạng thái của nó không thể bị thay đổi sau khi được tạo ra.[2] Nó trái ngược với đối tượng biến đổi (mutable object hay changeable object), mà có thể được thay đổi sau khi được tạo ra. Trong vài trường hợp, một đối tượng được xem là bất biến nếu ngay cả khi vài thuộc tính bên trong thay đổi nhưng trạng thái của đối tượng dường như không thay đổi theo cái nhìn từ bên ngoài. Ví dụ, một đối tượng sử dụng sự nghi nhớ để lưu kết quả tính toán nặng có thể vẫn được xem là đối tượng bất biến.
Kiểu chuỗi và các loại đối tượng cụ thể khác thường được biểu diễn dưới dạng đối tượng bất biến để cải thiện khả năng đọc và hiệu quả thời gian chạy trong lập trình hướng đối tượng. Đối tượng bất biến cũng hữu ích vì nó vốn an toàn luồng (thread-safe).[2] Các lợi ích khác là nó dễ hiểu, và mang lại tính bảo mật cao hơn đối tượng biến đổi.[2]
Xem thêm
Tham khảo
This article contains some material from the Perl Design Patterns Book
- ^ http://www.oxfordlearnersdictionaries.com/definition/english/immutable
- ^ a b c Goetz et al. Java Concurrency in Practice. Addison Wesley Professional, 2006, Section 3.4. Immutability
Liên kết ngoài
![]() |
Tra biến đổi trong từ điển mở tiếng Việt Wiktionary |
- Article Java theory and practice: To mutate or not to mutate? by Brian Goetz, from IBM DeveloperWorks -- saved copy at Internet Archive by Brian Goetz, from IBM DeveloperWorks -- saved copy at Internet Archive
- Immutable objects from JavaPractices.com
- Immutable objects from Portland Pattern Repository
- Objects Should Be Immutable by Yegor Bugayenko
- Immutable.js by Facebook
- Immutable structures in C# opensource project in Codeplex
- Immutable collections in .NET official library by Microsoft (NuGet Package)