Quali sono, esattamente i mix?
Esistono tecniche per raggiungere questo in C#?Mixins e .net
risposta
Non sono esperto, ma questo è quello che ho trovato.
Da MSDN Blog:
Alcuni suggeriscono che i metodi di estensione in l'imminente C# 3.0 sono una sorta di mixin, perché si può mettere in funzionalità in questi metodi e arbitrariamente tag che su qualsiasi classe che si mancanza. Nella specifica C# 2.0 è chiaramente chiamato che la classe base di una classe generica deve essere un tipo di classe così da escludere l'utilizzo dell'approccio sopra descritto in C#. Non sono troppo sicuro sul motivo per cui scegliamo di disabilitare esplicitamente la sottoclasse. Poiché C# non supporta l'eredità multipla , IMO dovrebbe aver supportato la codifica in stile Mixin.
Un mixin è un insieme di membri della classe che possono essere "mescolati" in una classe senza problemi di multi-eredità.
C# non ha mixin per sé, ma offre metodi di estensione per obiettivi simili.
Anche se non è abbastanza un mixin. Avresti un esempio facile da vedere in qualsiasi pseudo o linguaggio reale? –
@NoProblemBabe: ad esempio, Ruby fornisce il mixin 'Enumerable' che può essere mescolato in classi che sono enumerabili per estendere la classe con metodi per il filtraggio, la mappatura e l'ordinamento. C# /. NET ha la classe statica 'Enumerable' che fornisce i metodi di estensione per filtrare, mappare e classificare classi che sono enumerabili (" LINQ "). – dtb
interfaccia pubblica IEmailItem { string SendToName {get; impostato; } string SendToAddress {get; impostato; } } quindi un metodo di estensione SendMail (questo IEmailItem m) {qualche codice reale qui} ogni classe che implementa l'interfaccia IEmailItem "erediterà" il metodo di invio della posta – eloycm
Si prega di controllare re-mix on codeplex.com. Si tratta di una libreria open source per portare mixins a .NET
Ci si avrà una guida passo passo su come implementare mixins con .NET
- 1. Groovy Mixins?
- 2. SASS e Bootstrap - mixins vs. @extends
- 3. ereditarietà rubino vs mixins
- 4. Autoprefixer vs LESS/Sass mixins?
- 5. Qual è la differenza tra mixins statiche e tratto dinamica
- 6. Griglia semantica con Bootstrap + MENO Mixins ¿COME?
- 7. Come chiamare MENO mixins gradiente di bootstrap
- 8. Extjs 6 - toolkit moderno ui-mixins errore di compilazione
- 9. Django Abstract Models vs simple Python mixins vs Python ABC
- 10. Posso aggiungere metodi (statica) di classe che utilizzano EmberJS mixins
- 11. problema con mixins in un MooseX :: classe NonMoose
- 12. Differenza tra .NET Framework 4.6, Net Nativi e .Net Nucleo
- 13. StructureMap e ASP .Net Web API e .Net Framework 4.5
- 14. GWT e .NET
- 15. Micro servizi e .NET
- 16. Log4Net e .NET 4.0
- 17. Set Teoria e .NET
- 18. MCR e .NET incompatibilità
- 19. IIS6 e .Net 4.5?
- 20. Quartz, Unity e .NET
- 21. Asincronia e eventi .NET?
- 22. Strati .NET e database
- 23. Shibboleth e .NET
- 24. RightFax e .NET?
- 25. Multithreading e chiusure NET
- 26. .net MVC, SelectLists e LINQ
- 27. libevent, windows e programmazione .NET
- 28. .NET Entity Framework e transazioni
- 29. Serializzazione e offuscamento in .NET
- 30. .net chart cancellare e riaggiungere
Wikipedia link se siete all'oscuro come me: http: // en.wikipedia.org/wiki/Mixin – Rup