Domande taggate «traits»

Nella programmazione di computer, un tratto è una raccolta di metodi, utilizzati come "semplice modello concettuale per strutturare programmi orientati agli oggetti"




13
Tratti vs. interfacce
Ultimamente ho cercato di studiare PHP e mi ritrovo a rimanere impiccato sui tratti. Comprendo il concetto di riutilizzo del codice orizzontale e non voglio necessariamente ereditare da una classe astratta. Quello che non capisco è: qual è la differenza cruciale tra l'uso dei tratti rispetto alle interfacce? Ho provato …
346 php  interface  traits 

5
Che cos'è un tratto sigillato?
Le classi sigillate sono descritte in "Programmazione in Scala", mentre i tratti sigillati no. Dove posso trovare ulteriori informazioni su un tratto sigillato? Vorrei sapere se un tratto sigillato è uguale a una classe sigillata? O, in caso contrario, quali sono le differenze? Quando è una buona idea usare un …
332 scala  sealed  traits 



5
Tratti in PHP - qualche esempio / best practice del mondo reale? [chiuso]
Allo stato attuale, questa domanda non è adatta al nostro formato di domande e risposte. Ci aspettiamo che le risposte siano supportate da fatti, riferimenti o competenze, ma questa domanda probabilmente solleciterà dibattiti, argomenti, sondaggi o discussioni estese. Se ritieni che questa domanda possa essere migliorata e possibilmente riaperta, visita …
148 php  traits 

4
È possibile capire il tipo di parametro e il tipo di ritorno di un lambda?
Dato un lambda, è possibile capire il tipo di parametro e il tipo restituito? Se si, come? Fondamentalmente, voglio lambda_traitsche può essere utilizzato nei seguenti modi: auto lambda = [](int i) { return long(i*10); }; lambda_traits<decltype(lambda)>::param_type i; //i should be int lambda_traits<decltype(lambda)>::return_type l; //l should be long La motivazione dietro …


3
Quando usare val o def nei tratti di Scala?
Stavo esaminando le diapositive in scala efficaci e nella diapositiva 10 si menziona di non usare mai valin una traitper i membri astratti e di usare definvece. La diapositiva non menziona in dettaglio perché l'uso di abstract valin a traitè un anti-pattern. Apprezzerei se qualcuno potesse spiegare le migliori pratiche …

2
Perché `std :: mem :: drop` non è esattamente uguale alla chiusura | _ | () nei limiti dei tratti di livello superiore?
L'implementazione di std::mem::dropè documentata come la seguente: pub fn drop<T>(_x: T) { } In quanto tale, mi aspetterei che la chiusura |_| ()(colloquialmente nota come chiusura del gabinetto ) sia un potenziale sostituto 1: 1 dropin entrambe le direzioni. Tuttavia, il codice seguente mostra che dropnon è compatibile con un …


2
Perché un metodo che restituisce Unità può essere sovrascritto con il metodo che restituisce String quando i tipi restituiti non sono specificati in modo esplicito?
Stavo lavorando attraverso gli esempi di codice del capitolo Tratti nella programmazione in Scala Edition1 https://www.artima.com/pins1ed/traits.html e ho riscontrato un comportamento strano a causa del mio errore di battitura. Mentre il metodo di un tratto di sotto frammento di codice override non dà alcun errore di compilazione, anche se il …
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.