Ho appena deciso di giocare con PCL e ho convertito la mia libreria di classi in PCL.Quali sono le decisioni dietro la disponibilità del tipo per una piattaforma particolare?
Non sorprende che non possa essere costruito mostrando molti errori di tipo mancanti.
Ma quello che mi ha veramente confuso è in base a quali tipi mancano.
CancelEventArgs
classe supportata ma non lo è CancelEventHandler
.
È questa una semplice possibilità o una decisione deliberata di non includere un particolare tipo? Posso estrarre informazioni utili sulla progettazione di piattaforme dal fatto di tipo presenze o assenze?
Vorrei chiarire:
posso capire i casi in cui troppo specifica piattaforma concetti vengono rimossi.
Ma con PCL le cose non sono molto chiare per me.
Mi sono abituato a non pensarmi più intelligente degli altri, quindi cerco ragioni chiare.
Per rendere il tipo comune impostato il più grande possibile è facilitare la migrazione tra le piattaforme. Come afferma Eric Lippert, ogni funzionalità deve essere giustificata dal punto di vista del rapporto valore/spese. Quindi, o sopravvalutato il valore di un set di caratteri di grandi dimensioni o sottovaluto le difficoltà di implementare la sua portabilità.
Per quanto riguarda gli eventi specifici che eseguono l'analisi del codice ha dato una raccomandazione suono per utilizzare la versione genreic EventHandler<TEventArgs>
Un altro simile question.
Grazie, Daniel. Consiglieresti di creare librerie di helper come PCL sin dall'inizio? dicendo 'helper libray' intendo una libreria che generalmente contiene metodi di estensione per enumerabili e altre cose del genere. –
@voroninp Se ci sono API che è necessario implementare facilmente in una libreria helper, procedere. –