Domande con tag 'trait'

1
risposta

Perché non creare una lingua con l'ereditarietà di mixin-only? [duplicare]

Sembra che in tutti i linguaggi OOP basati su classi o prototipi, i mixins siano una funzione secondaria o secondaria. Tuttavia, per me sembra che l'ereditarietà tradizionale sia solo un caso specifico di utilizzo di un singolo mixin. Sup...
posta 02.11.2015 - 13:07
2
risposte

Perché il compilatore di Scala non può fornire un avviso di corrispondenza del modello per classi / tratti non sigillati?

Se uso un un sealed trait o abstract class in Scala e poi uso la corrispondenza dei pattern, mi chiedo, il compilatore non sa al momento della compilazione per questo particolare patternmatch quali possibili implementazioni di questo...
posta 18.12.2014 - 13:08
1
risposta

Confronto della modellazione con l'ereditarietà rispetto alla composizione basata sui caratteri idiomatici

Recentemente ho iniziato a studiare Rust e Scala e ciò che mi ha colpito è stata la mancanza del modello di ereditarietà a cui sono abituato in C ++ e Java. Sebbene io possa modellare cose semplici con struct e tratti in Rust, voglio vedere u...
posta 03.10.2016 - 21:51
1
risposta

Perché i tipi Scala e Opzione di Scala non sono interfacce / tratti ma classi?

Volevo creare una classe CompileResult , che può essere trattata come un tipo E, ma ha alcuni metodi utili aggiuntivi. Dovrebbe essere un CompileSuccess o un CompileFailure (che ha anch'esso alcune funzionalità estese). Tuttavia, n...
posta 17.12.2014 - 16:30
2
risposte

È possibile simulare e inserire tratti in PHPUnit?

Ho bisogno di estendere una classe di terze parti che non posso modificare. Le dipendenze della classe sono per lo più iniettate attraverso il costruttore, rendendole facili da prendere in giro. Tuttavia, la classe utilizza anche metodi tratti d...
posta 10.01.2016 - 19:22
1
risposta

Usa StringLike invece di String in Scala?

Scala ha il tratto StringLike. Diciamo che voglio creare una classe di casi Name e internamente dovrebbe salvare il nome con alcuni caratteri. Dovrei usare case class Name(name: StringLike) o case class Name(name: String) ? Il p...
posta 18.06.2015 - 17:02
2
risposte

La composizione dei tratti è una buona pratica?

Quindi, ora mi occupo di questa base di codice relativamente nuova che usa e, a volte, sembra abusa dei tratti. Dal momento che sono stato esposto all'uso dei tratti in modo piuttosto limitato, mi chiedevo se il modo in cui li stanno usando ha s...
posta 16.09.2015 - 16:02
1
risposta

Qual è il modo più generico per fornire una quantità variabile di output da una funzione Rust?

Attualmente sto scrivendo un'API per algoritmi di apprendimento automatico in Rust e mi piacerebbe che un singolo algoritmo genetico, una rete neurale artificiale o una rete bayesiana fornissero più output in modo tale che per le istanze in cui...
posta 09.11.2015 - 16:04
2
risposte

Un tratto dovrebbe riferirsi ai metodi padre?

È un odore di codice se i metodi nel mio tratto si riferiscono ai metodi parent:: o ai metodi che si presume siano nella classe di utilizzo? Un esempio casuale (senza senso) trait foo { public function bar() { return...
posta 17.05.2018 - 11:22
2
risposte

Esiste un tale motivo di progettazione? (Multi-Strategy / Multi-Tratti)

Esiste un modello di progettazione che consentirebbe a una classe da una gerarchia di "iscriversi a" metodi concreti? Ad esempio, supponi di avere una classe base astratta che richiede l'implementazione di un metodo. Public MustInherit Clas...
posta 01.02.2016 - 03:09