interfaccia

Interface è un semplice controllo dell'interfaccia temporale di compilazione per OO Perl.
Scarica ora

interfaccia Classifica e riepilogo

Annuncio pubblicitario

  • Rating:
  • Licenza:
  • Perl Artistic License
  • Prezzo:
  • FREE
  • Nome editore:
  • Scott Walters
  • Sito web dell'editore:
  • http://search.cpan.org/~swalters/Math-Preference-SVD-0.01/lib/Math/Preference/SVD.pm

interfaccia Tag


interfaccia Descrizione

L'interfaccia è un semplice controllo dell'interfaccia temporale di compilazione per OO Perl. Pacchetto sinossi foo; Utilizzare l'interfaccia 'Iterator', 'Generator', 'Clonable', 'DBI :: DBD'; AbstractCompile-Time Interface Compliance Test. Ispeziona i metodi definiti nel modulo e li confrontano rispetto ai metodi definiti nel modulo Elenco. Non richiede una sintassi speciale o aggiuntiva. Non riuscire a implementare alcun metodo contenuto in una delle classi elencate, la compilazione interromperà con un messaggio di errore. Metodi che iniziano con un sottolineamento vengono ignorati e si presume che non sia parte dell'interfaccia. I moduli Elencato sulla linea di interfaccia Usa verrà aggiunta al tuo array @isa. Questo non è fatto per riutilizzare il codice da loro - le definizioni di interfaccia dovrebbero essere stub di codice vuoto o forse un'implementazione di riferimento. È fatto in modo che il tuo modulo assisterà il test -> ISA () per il nome del pacchetto che stai implementando l'interfaccia di. Ciò dice a Perl che il tuo modulo possa essere utilizzato al posto dei moduli che implementano l'interfaccia di.Sample Definizione dell'interfaccia: Pacchetto TestInterface; sub foo {} sub bar {} sub baz {} 1; un pacchetto che afferma di implementare l'interfaccia "TestInterface" dovrebbe definire i metodi foo (), barra () e baz (). Un'interfaccia "potrebbe aver bisogno di un po ' spiegazione. È un'idea di orientamento dell'oggetto, noto anche come polimorfismo, che dice che dovresti essere in grado di utilizzare oggetti intercambiabili intercambiabilmente. Grazie, cielo La gente Oo è venuta e ci ha mostrato la luce! Il rovescio del polimorfismo è il tipo di sicurezza. In Perl, -> ISA () ti consente di verificare di accertarsi che qualcosa sia derivato da una classe base. La logica va questo se è derivato da una classe base, e stiamo cercando un oggetto che riempie la necessità della classe base, allora la sottoclasse funzionerà altrettanto bene, e possiamo accettarlo. Gli oggetti estendendo vengono eseguiti con le classi di base della sottoclassante e passano le sottoclassi come versioni dell'originale. Quando è possibile che tu abbia quasi convinto che il mondo funzioni in questo modo, questo risulta essere quasi completamente inutile. Nel mondo reale, ci sono solo alcuni motivi per cui un oggetto viene utilizzato al posto di un altro: qualcuno ha scritto un codice davvero orribile, e vuoi scambiare il loro oggetto con una versione migliore della stessa cosa. Stai passando a un oggetto che fa la stessa cosa ma in un modo diverso, ad esempio utilizzando un negozio di database anziché un negozio di file flat. Stai facendo alcune modifiche minori a un oggetto esistente e vuoi essere in grado di estendere la classe base in altre direzioni in futuro. Solo nell'ultimo caso è il codice ereditato con la sottoclassamento anche utile. Infatti, c'è una mossa verso l'uso di composizione (ha-a) invece di ereditarietà (A) in tutta l'industria, principalmente perché si sono stancati delle persone che indicano che OO succhia perché l'eredità serve solo a fare un grande disordine Di codice altrimenti pulito. Sepering L'interfaccia dall'attuazione consente di effettuare più implementazioni di un'idea. Possono condividere il codice l'uno con l'altro, ma non devono. Il programmatore ci ha assicurato che il loro modulo fa ciò che è richiesto affermando che implementa l'interfaccia. Mentre questa non è una prova che il codice funziona, Climaing per implementare un'interfaccia è un tipo di contratto. Il programmatore sappia che il lavoro è richiesto da lui e ha accettato di consegnarlo. La definizione dell'interfaccia può essere un pacchetto pieno di metodi stub che non fanno nulla, oppure potrebbe essere un'implementazione lavorativa effettiva di un oggetto che sei lottare per la compatibilità con. Il primo caso è pulire e il pacchetto pieno di stub serve come buona documentazione. Il secondo caso può essere utile nei casi in cui il primo caso non è stato fatto, ma qualcuno ha ignorato la saggezza dell'interfaccia e ha scritto un pacchetto comunque. La saggezza dell'interfaccia dice di scrivere un'interfaccia per ogni nuovo tipo di oggetto che potrebbe avere più implementazioni. Le interfacce servono come contratto per le funzionalità minime necessarie per implementare un oggetto di tale tipo. Quando si lavora con gli oggetti, creando, controllando i tipi quando li accetti, ecc. - Lavora sempre con il tipo di interfaccia, mai il tipo di singola implementazione. Ciò mantiene il tuo codice Generic.in per fare la cosa composizione (ha-a), contiene uno o più oggetti che è necessario eseguire il tuo lavoro, implementato un'interfaccia che invia il metodo chiama a tali oggetti. Forse il tuo nuovo () metodo crea tali oggetti e memorizza le variabili di istanza. Requisiti: · Perl.


interfaccia Software correlato

Dati :: Taxi

Dati :: Il taxi è una serializzazione dei dati XML-ISH di Taint-Aware, XML-ISH. ...

173

Scarica