Khác với thiếu tài liệu, sự khác biệt giữa definterface
và defprotocol
trong Clojure là gì?Sự khác biệt giữa definterface và defprotocol trong Clojure
11
A
Trả lời
9
Theo Joy của Clojure:
Những lợi thế của việc sử dụng
definterface
quadefprotocol
bị hạn chế hoàn toàn thực tế là cựu cho phép các kiểu dữ liệu đối số và lợi nhuận. Tại một số điểm trong tương lai, cùng một lợi thế có thể sẽ được mở rộng đến các giao diện được tạo [theo giao thức], vì vậy hãy sử dụngdefinterface
một cách tiết kiệm và thích giao thức trừ khi hoàn toàn cần thiết.
3
Sự hiểu biết có thể không đầy đủ của tôi là definterface
tạo ra một giao diện .class mà mã java có thể triển khai để tạo các lớp phù hợp để chuyển tới các hàm Clojure của bạn.
Giao thức ngắn gọn và tập trung hơn là thực hiện công văn hơn đa phương thức. bạn thực sự có mã đang chạy trong một giao thức được sử dụng bởi mã clojure khác.
Các vấn đề liên quan
- 1. Sự khác biệt giữa: while và: khi nào trong clojure?
- 2. Clojure - sự khác biệt giữa '(dấu nháy đơn) và `(backtick)
- 3. Sự khác biệt giữa. và #
- 4. Sự khác biệt giữa $ (...) và `...`
- 5. Sự khác biệt giữa = và: =
- 6. Sự khác biệt giữa $ * và $ @
- 7. Sự khác biệt giữa ". +" Và ". +?"
- 8. Sự khác biệt giữa "**/* /" và "** /"?
- 9. Sự khác biệt giữa '.' và "." trong java
- 10. Sự khác biệt giữa. và: trong Lua
- 11. sự khác biệt giữa 'và "trong JavaScript?
- 12. Sự khác biệt giữa! và !! trong yaml?
- 13. Sự khác biệt giữa $ @ và $! trong perl
- 14. Sự khác biệt giữa nguyên tử trong Lisp thường và nguyên tử trong Clojure là gì?
- 15. Sự khác biệt trong Clojure giữa việc sử dụng và yêu cầu
- 16. Sự khác biệt giữa thủ tục và thủ tụC# trong Lisp/Clojure là gì?
- 17. Trong Lisp (Clojure, Emacs Lisp), sự khác biệt giữa danh sách và báo giá là gì?
- 18. Sự khác biệt giữa SwingWorker và SwingUtilities.invokeLater
- 19. Sự khác biệt giữa fgets và fscanf?
- 20. Sự khác biệt giữa self.navigationController.navigationItem và self.navigationItem
- 21. sự khác biệt giữa $ .getJSON và $ .get
- 22. Sự khác biệt giữa WebApiConfig.cs và RouteConfig.cs
- 23. Sự khác biệt giữa __construct() và init()
- 24. Sự khác biệt giữa RASPHONE.exe và RASDIAL.exe
- 25. Sự khác biệt giữa viewbag và viewstate?
- 26. sự khác biệt giữa query.list và query.iterate
- 27. Sự khác biệt giữa Window.load và document.readyState
- 28. Sự khác biệt giữa URL và URI?
- 29. Sự khác biệt giữa Z3 và coq
- 30. Sự khác biệt giữa textMultiLine và textLongMessage