Che cosa significa "per legare" Mean in un computer?

May 16

Nella programmazione di computer, un "compilatore" prende il codice sorgente programmatore e lo trasforma in codice leggibile a macchina. Il compilatore prende le variabili e nomi delle funzioni nel codice sorgente e li lega a indirizzi di memoria che contengono i dati provenienti da tali variabili e funzioni. In questo modo, il computer sa quando e dove a valori di riferimento ei dati. Con la programmazione orientata agli oggetti, il compilatore può legare in modo dinamico i nomi ai valori o locazioni di memoria, al fine di consentire flessibilità nella assegnazione oggetto attraverso binding dinamico.

Variabili e riferimenti

Nella programmazione di computer, "vincolante" si riferisce a entrambe le variabili e riferimenti. Quando un compilatore "lega" un nome di variabile, si traduce direttamente che nome di variabile a un indirizzo della macchina che conterrà quel valore. Il tipo di variabile detterà come verrà utilizzato quel valore. Una variabile normale conterrà un valore letterale per il programma, mentre una variabile di riferimento, noto anche come un puntatore, conterrà un indirizzo nella memoria.

riferimenti agli oggetti

Pointer riferimenti sono più utilizzati durante l'allocazione dinamica della memoria per gli oggetti. Gli oggetti possono essere creati in un contesto locale sulla base del programma o funzione, ma spesso i programmatori creerà un riferimento a un oggetto nella memoria a lungo termine che può essere utilizzato in tutto un programma senza copiandolo. Questi riferimenti sono mappate per fare riferimento a nomi come altre variabili.

Ma oggetto eredità introduce un nuovo tipo di legame che facilita certi paradigmi di programmazione orientati agli oggetti.

Le classi ed ereditarietà

Le classi rappresentano progetti per gli oggetti, definire che tipo di dati in essi contenuti e quello che fanno. Tuttavia, altre classi possono "ereditare" la funzionalità e dati provenienti da altre classi durante l'implementazione le proprie caratteristiche. Così, per esempio, una classe "SoccerBall" potrebbe ereditare da una classe "palla" di base in modo che possa utilizzare i dati e le funzioni di una palla, mentre l'espansione della definizione di classe per abbinare un pallone da calcio nel programma. Nella terminologia di programmazione, questo rapporto si chiama un "è-un" rapporto, in quanto un pallone da calcio "è" una palla. Il concetto di ereditarietà illustra due diversi tipi di rilegatura: statici e tardiva.

binding dinamico

Anticipato o binding statico significa che il compilatore lega un nome di variabile o un riferimento a un oggetto quando il programma viene compilato. Quindi, le funzioni e le variabili all'interno delle classi saranno vincolati a un nome in fase di compilazione. Dinamico, o in ritardo, mezzi che il legame vincolante avviene durante la fase di esecuzione. Una classe che eredita che condivide una "is-a" relazione con un'altra classe, come nell'esempio delle classi Ball e soccerball, può ridefinire funzioni dalla sua classe di base per soddisfare le proprie necessità. Questo lascerà due funzioni diverse per classi differenti: uno per la base, e uno per la classe eredita. Tardiva legherà il nome della funzione alla sua posizione codice appropriato in base al quale oggetto è associato.