Web - Amazon

We provide Linux to the World


We support WINRAR [What is this] - [Download .exe file(s) for Windows]

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
SITEMAP
Audiobooks by Valerio Di Stefano: Single Download - Complete Download [TAR] [WIM] [ZIP] [RAR] - Alphabetical Download  [TAR] [WIM] [ZIP] [RAR] - Download Instructions

Make a donation: IBAN: IT36M0708677020000000008016 - BIC/SWIFT:  ICRAITRRU60 - VALERIO DI STEFANO or
Privacy Policy Cookie Policy Terms and Conditions
Metodo (programmazione) - Wikipedia

Metodo (programmazione)

Da Wikipedia, l'enciclopedia libera.

Il termine metodo viene usato principalmente nel contesto della programmazione orientata agli oggetti per indicare un sottoprogramma associato in modo esclusivo ad una classe (metodo statico) oppure ad un oggetto (metodo di istanza). Come in una procedura di un linguaggio di programmazione strutturale, un metodo solitamente consiste in una sequenza di istruzioni scritte per eseguire una determinata azione, eventualmente personalizzata da un set di parametri e in grado di restituire al programma chiamante un valore di ritorno (o di output) di un determinato tipo.

Una delle operazioni che possono essere eseguite da un metodo è la lettura/scrittura di dati "privati" memorizzati in un oggetto o in una classe: in questo modo il programmatore può gestire in modo molto flessibile l'accesso ai dati, prevedendo, ove necessario, opportuni meccanismi di protezione e validazione.

Un metodo deve sempre assicurare la conservazione delle variabili di classe non modificabili (invarianti) memorizzate nell'oggetto a cui è esso associato, e si deve sempre presupporre che tali invarianti contengano un valore valido nel momento in cui il metodo entra in esecuzione. Per garantire che ciò avvenga si applicano precisi vincoli ai parametri trasmessi in input al metodo e si verica che l'output soddisfi a determinate regole. Se questi vincoli o queste regole vengono violati, il metodo può sollevare un' eccezione. Se lo stato in cui si viene a trovare l'oggetto prima o dopo l'esecuzione del metodo genera valori non validi degli invarianti, si assume che il programma è affetto da un bug.

La differenza fra una procedura ed un metodo è che il metodo, essendo associato ad un ben determinato oggetto, può accedere ai dati "privati" di quel oggetto secondo modalità "consistenti" con il comportamento che il programmatore intende dare a quello stesso oggetto. Quindi, ragionando nell'ottica della programmazione orientata agli oggetti, un metodo è qualcosa di più di una semplice sequenza di istruzioni. In effetti potrebbe essere definito come "un modo in cui un oggetto fornisce al programma un certo servizio": la chiamata del metodo, in questa ottica, è la "richiesta" inoltrata all'oggetto, affinché esso esegua un preciso "compito". Un altro modo di esprimere lo stesso concetto è quello di dire che, con l'esecuzione di un metodo, si trasmette un "messaggio" all'oggetto.

[modifica] Tipi di metodi

Come detto sopra, i metodi di istanza sono associati ad un particolare oggetto, mentre i metodi di classe - detti anche metodi statici - sono associati ad una classe. Si definisce costruttore un particolare tipo di metodo di istanza chiamato automaticamente al momento della creazione di un'istanza di una classe. In Java, C++, C# e PHP ai costruttori viene attribuito lo stesso nome della classe a cui si riferiscono. Un metodo astratto è un metodo privo di implementazione, spesso usato come segnaposto che, per poter essere eseguito, deve essere successivamente ridefinito in una sottoclasse derivata da quella che contiene il prototipo del metodo astratto. Questa tecnica di programmazione è molto comoda, perché permette di predefinire una struttura generale di base (framework) prima di implementare le singole funzionalità del programma.

Un metodo di accesso è un tipo di metodo, di solito molto semplice e composto da poche righe di codice, che fornisce al programmatore un modo per accedere ai dati che descrivono lo stato interno di un oggetto. Benché introduca una nuova condizione di dipendenza l'uso di questo tipo di metodi è preferibile rispetto all'accesso diretto ai dati di stato in quanto fornisce al programmatore un livello di astrazione. Ad esempio, una classe ContoBancario potrebbe disporre di un metodo LeggiSaldo() per ricavare il valore attuale del saldo, piuttosto che accedere direttamente alla variabile, membro della classe, in cui il valore del saldo è memorizzato: con questo accorgimento si avrebbe il vantaggio di potere, in successive versioni del programma, implementare meccanismi più elaborati per ricavare questo stesso dato (ad esempio ricavarlo da un database) senza dover riscrivere il relativo codice. Un metodo che cambia lo stato di un oggetto viene spesso chiamato modificatore.

[modifica] Voci correlate

Our "Network":

Project Gutenberg
https://gutenberg.classicistranieri.com

Encyclopaedia Britannica 1911
https://encyclopaediabritannica.classicistranieri.com

Librivox Audiobooks
https://librivox.classicistranieri.com

Linux Distributions
https://old.classicistranieri.com

Magnatune (MP3 Music)
https://magnatune.classicistranieri.com

Static Wikipedia (June 2008)
https://wikipedia.classicistranieri.com

Static Wikipedia (March 2008)
https://wikipedia2007.classicistranieri.com/mar2008/

Static Wikipedia (2007)
https://wikipedia2007.classicistranieri.com

Static Wikipedia (2006)
https://wikipedia2006.classicistranieri.com

Liber Liber
https://liberliber.classicistranieri.com

ZIM Files for Kiwix
https://zim.classicistranieri.com


Other Websites:

Bach - Goldberg Variations
https://www.goldbergvariations.org

Lazarillo de Tormes
https://www.lazarillodetormes.org

Madame Bovary
https://www.madamebovary.org

Il Fu Mattia Pascal
https://www.mattiapascal.it

The Voice in the Desert
https://www.thevoiceinthedesert.org

Confessione d'un amore fascista
https://www.amorefascista.it

Malinverno
https://www.malinverno.org

Debito formativo
https://www.debitoformativo.it

Adina Spire
https://www.adinaspire.com