Poza różnicą między dokumentacją, jaka jest różnica między definterface
a defprotocol
w Clojure?Różnica między definicją a defprotocol w Clojure
Odpowiedz
Według Joy of Clojure:
Zalety korzystania
definterface
naddefprotocol
są ograniczone wyłącznie z faktu, że były prymitywne typy pozwala na argumentów i zwrotów. W pewnym momencie w przyszłości ta sama zaleta zostanie prawdopodobnie rozszerzona na interfejsy generowane [przez protokoły], więc oszczędnie korzystaj zdefinterface
i preferuj protokoły, chyba że absolutnie konieczne jest .
Moje prawdopodobnie niekompletne zrozumienie to definterface
tworzy interfejs .class, który może implementować kod java w celu utworzenia klas odpowiednich do przekazywania do funkcji Clojure.
Protokoły to krótszy, szybszy i bardziej skoncentrowany sposób wysyłania niż multimetody. faktycznie masz uruchomiony kod w protokole, który jest używany przez inny kod clojure.
- 1. Różnica między definicją słownika
- 2. Różnica między clojure a clojurescript?
- 3. Clojure - różnica między "(apostrof) a" (backtick)
- 4. Różnica między ciągiem odczytywanie a ciągiem znaków w Clojure
- 5. Różnica między operatorem kropki a pełnoprawnym nazwanym wywołaniem w Clojure
- 6. Jaka jest różnica między definicją var i val w Scali?
- 7. Różnica między obiektem a *?
- 8. Różnica między jquery a $
- 9. Różnica między String [] a i String ... a
- 10. Różnica między DataSource a DataSet
- 11. Różnica między mapą a dyktowaniem
- 12. Różnica między systemem a shell_exec
- 13. Różnica między% 5B% a% 5B0%?
- 14. Różnica między wysokością a tłumaczeniemZ
- 15. Różnica między Redis a kafka
- 16. Różnica między content_main.xml a activity_main.xml?
- 17. Różnica między File.Copy a File.Move
- 18. różnica między __u8 a uint8_t
- 19. Różnica między CCNode a CCLayer?
- 20. Różnica między IPFS a Filecoin?
- 21. Różnica między hash_map a unordered_map?
- 22. Różnica między prędkością a AppFabric
- 23. Różnica między kodowaniem a sortowaniem?
- 24. Różnica między Invoke a DynamicInvoke
- 25. Różnica między WhitespaceTokenizerFactory a StandardTokenizerFactory
- 26. Różnica między DataContractSerializer a XmlSerializer
- 27. Różnica między transakcją a transakcjąScope
- 28. Różnica między dtrtrs a dtrsm
- 29. Różnica między bytearray a listą
- 30. Różnica między nowym a przesłonięciem?