Tôi đang cố gắng hiểu cách phân cấp Clojure hoạt động, với xuất phát và là-a? cấu trúc. Tôi không chắc làm thế nào tôi sẽ sử dụng chúng với các bản đồ và hồ sơ trong chương trình của tôi. Có ai sử dụng chúng?Cách sử dụng cấu trúc phân cấp clojure?
5
A
Trả lời
5
Tôi thấy câu hỏi của bạn hơi mơ hồ. Bạn đã đọc tài liệu trên trang web Clojure chưa?
http://clojure.org/multimethods
Tôi thấy các ví dụ có khá dễ dàng để làm theo:
user=> ::rect
:user/rect
user=> (derive ::rect ::shape)
nil
user=> (parents ::rect)
#{:user/shape}
user=> (derive ::square ::rect)
nil
user=> (ancestors ::square)
#{:user/shape :user/rect}
user=> (isa? ::square ::shape)
true
Ngoài ra còn có bài viết trên blog này với một "thực tế" hơn ví dụ:
Các vấn đề liên quan
- 1. BitBucket Wiki: Tạo cấu trúc phân cấp?
- 2. Cấu trúc phân cấp SQL 2008 với nhiều nút gốc
- 3. Khóa XSD/keyref: cấu trúc khóa phân cấp
- 4. Cố gắng hiểu cấu trúc phân cấp xem
- 5. Chuyển đổi danh sách cây thành cấu trúc phân cấp
- 6. Cấu trúc phân cấp của loại MainActivity không nhất quán
- 7. Chia sẻ cấu trúc trong Clojure
- 8. Cấu trúc ứng dụng sử dụng WCF
- 9. Cung cấp nội dung nhị phân bằng cách sử dụng Clojure Ring
- 10. Cách tải Hibernate FetchProfile để tải các đối tượng con sâu trong cấu trúc phân cấp
- 11. Thực hiện các cấu trúc dữ liệu tùy chỉnh Sử dụng các giao thức Clojure
- 12. Cách tốt nhất để cấu trúc và xây dựng ứng dụng Clojure có plugin?
- 13. Sử dụng cấu trúc C trong Java
- 14. Thay đổi cấu trúc tệp dự án sau khi di chuyển từ Eclipse sang cấu trúc phân cấp Android Studio
- 15. Cách xác định vị trí mục dữ liệu trong cấu trúc phân cấp?
- 16. Làm cách nào để lọc cấu trúc phân cấp wpf treeview bằng ICollectionView?
- 17. Cấu trúc Clojure được lồng vào nhau trong một cấu trúc khác
- 18. Làm cách nào để hiển thị cấu trúc phân cấp Maven POM?
- 19. Android NDK: cách đưa Android.mk vào một Android.mk khác (cấu trúc dự án phân cấp)?
- 20. Cấu trúc ngăn xếp chiều dài cố định ở Clojure
- 21. Cấu trúc được sử dụng trong DBMS
- 22. So sánh hai cấu trúc bằng cách sử dụng ==
- 23. Đọc tệp nhị phân thành cấu trúc
- 24. Cách thành ngữ để xây dựng cấu trúc tùy chỉnh từ dây kéo XML trong Clojure
- 25. Thực hiện cấu trúc dữ liệu phân cấp trong cơ sở dữ liệu
- 26. Làm cách nào để tôi có thể tái cấu trúc mã nguồn Clojure?
- 27. Cách tiếp cận thành ngữ để cấu trúc mã nguồn Clojure
- 28. Từ chối của Clojure - cách sử dụng?
- 29. Lắng nghe các sự kiện quan trọng cho cấu trúc phân cấp thành phần
- 30. Mảng cấu trúc Matlab: Phân bổ nhanh
Cảm ơn , thông tin hữu ích, vì vậy nếu tôi hiểu chính xác nếu tôi có một bản ghi như (defrecord R []) và tôi muốn đặt nó trong một loại hieracrhy thì tôi cần để kết hợp các loại với nó, như (def r (R.)) (assoc r: type :: type). Điều này có đúng không? – Zubair
Tbh, tôi chưa bao giờ làm bất cứ điều gì như thế này với hồ sơ (tiếc là tôi đã không có thời gian để thực sự lặn vào Clojure 1,2 chưa), nhưng nó có vẻ hợp lý. –