Tôi nghĩ điều quan trọng là phải mở rộng thêm một chút về việc gỡ lỗi "ngược" hoặc "lịch sử" này. Tôi nghĩ rằng để hiểu các hệ thống và hành vi phức tạp trong đó, để phát lại các "sự kiện" làm cho trạng thái rõ ràng là rất quan trọng.
Điều tôi muốn bày tỏ là bạn không đơn độc khi tự hỏi tại sao kỹ thuật này không được áp dụng nhiều hiện nay hoặc tại sao các vấn đề liên quan hiếm khi được thảo luận rõ ràng.
Vì vậy, hãy nhấn mạnh hai khái niệm rất quan trọng ở đây:
1. Để hiểu một hệ thống lập trình, thật hữu ích khi làm cho trạng thái rõ ràng
2. Để hiểu thêm về một hệ thống lập trình phát lại các chuỗi trạng thái (sự kiện) có thể giúp ích rất nhiều.
Dưới đây là một số nguồn giải quyết vấn đề và đề xuất hoặc giải pháp thiết kế cho vấn đề (xử lý trạng thái trong các hệ thống phức tạp):
-Nhưng bit tar, giấy: http://shaffner.us/cs/ con / vecit.pdf
Ý tưởng chính: tránh, cô lập hoặc làm cho nhà nước rõ ràng
-CQRS
http://www.cqrs.nu/
Đây là sự kết hợp của hai khái niệm: Phân đoạn truy vấn lệnh và tìm nguồn cung ứng sự kiện. Có tồn tại các triển khai khác nhau (Java, C #, Scala). Việc phát lại các chuỗi Tate và sự phát triển của một mô hình miền là những phần quan trọng ở đây.
Nếu bạn thực sự thu nhỏ và nhìn thấy bức tranh rất rộng, bạn có thể thấy rằng với sự "trỗi dậy" của lập trình chức năng, mọi người đã ((un) có ý thức) bị thu hút bởi fp vì nó làm cho trạng thái rõ ràng! Nhưng điều đó chỉ liên quan đến điểm thứ nhất, để giải quyết vấn đề thứ hai, bạn cần một khái niệm khác có thể được mô tả là "lỏng lẻo" như là lập trình phản ứng chức năng.
Vì vậy, bạn có thể nói tất cả tốt và tốt nhưng ai thực sự sử dụng CQRS và FRP? Tôi sẽ nói (IMO vì tôi không có con số cụ thể) thực sự rất nhiều công ty chỉ là họ không biết công việc họ làm có thuật ngữ này. Có thể bạn google một chút và bạn nghe từ các doanh nghiệp sử dụng CQRS, có một số câu chuyện thành công đã được đưa ra. FRP cũng đang tăng chậm như một ví dụ tôi có thể cung cấp cho Netflix: http://techblog.netflix.com/2013/02/rxjava-netflix-api.html
Mà vừa phát hành một triển khai của RX thực sự dựa trên .NET (nhưng đã triển khai Javascript quá). Vì vậy, ngày nay mọi người đang sử dụng các kỹ thuật này, TRONG LỚN để hiểu các hệ thống phức tạp và làm cho chúng thậm chí còn tốt hơn. Đó là lý do tại sao họ sử dụng các kỹ thuật sửa lỗi ngược.