Che cos'è un Bootstrapper nella programmazione?

13

A volte vedo il termine "Bootstrapper". L'ho visto per ultimo quando ho creato alcuni esercizi di apprendimento per Prism. Mi sono imbattuto in UnityBootstrapper class. La mia domanda è: quando chiameresti un corso "Bootstrapper"? Perché? Cosa dice sulla classe?

    
posta Ioan Paul Pirau 27.07.2011 - 17:18
fonte

4 risposte

21

Nel tuo esempio specifico stai parlando di un Bootstrapper del contenitore di iniezione delle dipendenze. Qui è dove si configurano tutte le istanze e in genere si prepara il contenitore per l'uso.

Inoltre finisce dove si trova la maggior parte dell'accoppiamento nella tua applicazione (deve risiedere da qualche parte), ma questo è un effetto collaterale, non lo scopo.

In termini più generali, un bootstrapper è solo una classe o un metodo che prepara / configura un gruppo di classi / oggetti o un'intera API per le tue esigenze e usi specifici.

    
risposta data 27.07.2011 - 17:36
fonte
10

In senso generale, c'è una risposta eccellente a EL & U.SE alla domanda Qual è il significato di" bootstrap "? :

Bootstrap refers to a process that is akin to picking oneself up by the bootstraps. The idea is that it is physically impossible to lift yourself by bending over and trying to "lift".

Bootstrapping refers to doing exactly that but in a way analogous to physics. Computing is the most common area I hear the term. A program that bootstraps itself is one that begins with an extremely trivial operation and then uses that to continue the startup process internally. In a strict sense, the program does need help for the very first step but once that happens it doesn't need any external help.

Pertanto, UnityBootstrapper sarebbe logicamente una classe che consente alla tua applicazione di riprendersi con i suoi bootstraps , un'asserzione confermata dal pagina MSDN per la classe.

Base class that provides a basic bootstrapping sequence that registers most of the Composite Application Library assets in a IUnityContainer.

Remarks: This class must be overriden to provide application specific configuration.

    
risposta data 27.07.2011 - 17:43
fonte
1

Di solito significa qualcosa che, dato un insieme minimo di dati, costruisce un oggetto completo. Ad esempio un YieldCurveBootstrapper prende quotazioni di mercato (tassi di deposito, tassi swap, ecc.) E costruisce una curva di rendimento calibrata.

    
risposta data 27.07.2011 - 17:24
fonte
1

Nella terminologia di basso livello, un bootstrapper è un pezzo di codice caricato all'avvio che configura la memoria e l'ambiente prima di attivare il punto di ingresso del sistema operativo.

    
risposta data 27.07.2011 - 17:50
fonte

Leggi altre domande sui tag