login LOGIN
CHIUDI chiudi
Il mio profilo
ACCEDI CON MYFASTWEB

mostra
Non sei registrato? Crea un account
Hai dimenticato la password?
Inserisci l'indirizzo email di registrazione per reimpostare la password.
Segui le istruzioni che ti abbiamo inviato per posta elettronica.
Torna alla form di Login
Non sei registrato? Crea un account

Programmazione a oggetti, cos'è e come funziona

Ideato a metà degli anni '50, questo paradigma di programmazione permette di facilitare la stesura e la manutenzione del codice

Programmazione in corso

La programmazione orientata agli oggetti è un paradigma di programmazione introdotto tra la seconda metà degli anni '50 e l'inizio degli anni '60 nei laboratori di ricerca e sviluppo del Massachusetts Institute of Technology. Particolarmente utile nel caso della definizione e creazione dell'interfaccia grafica di programmi e , la programmazione a oggetti permette di definire gli oggetti software e stabilirne le modalità di interazione e le relazioni di interdipendenza degli uni con gli altri. Tra i vantaggi che questo metodo di programmazione assicura troviamo il supporto alla modellazione degli oggetti naturali (bottoni, menu, cerchi e quadrati) all'interno dell'infrastruttura software; migliore gestione e manutenzione dei programmi di grandi dimensioni; favorire la modularità e il riuso del codice.

Tra i linguaggi di programmazione orientati agli oggetti più conosciuti troviamo C++, Objective-C, Smalltalk, Delphi, Java, C#, Perl, Python, Ruby e PHP.

La storia della programmazione a oggetti

La prima volta che le parole “oggetti” e “orientata” sono utilizzate nella loro accezione moderna si era, come accennato, sul finire degli anni '50. Negli ambienti del gruppo di lavoro sull'intelligenza artificiale i termini sono utilizzati per riferirsi all'identificazione degli oggetti del LISP (items nell'originale inglese) con alcune proprietà. Sempre dal MIT arriva, tra il 1960 e il 1961, il software di disegno assistito dall'elaboratore Sketchpad: si tratta di uno dei primi esempi di applicativi realizzati utilizzando i principi basilari della programmazione ad oggetti.

 

Codice

 

Il concetto formale di “oggetto” è introdotto a inizio anni '60 da alcuni sviluppatori del Norwegian Computing Center di Oslo all'interno del linguaggio di programmazione Simula 67. Per la prima volta, infatti, sono esplicitati i concetti di oggetto (o istanza), classe, sottoclassi, funzione virtuale, co-routine e simulazione di eventi discreti. Un decennio più tardi si registra un altro grande passo in avanti per lo sviluppo della programmazione orientata agli oggetti: il linguaggio Smalltalk, sviluppato da Alan Kay presso lo Xerox PARC, è il primo a fare ampio utilizzo degli oggetti e dei messaggi come base per la computazione e lo sviluppo del software. Sono gli stessi tecnici del PARC ad utilizzare per primi la dicitura object-oriented programming (programmazione orientata agli oggetti) per rimarcare l'uso pervasivo di questo paradigma.

Nel 1985 è il momento di Eiffel, linguaggio di programmazione focalizzato primariamente sulla qualità del software e il primo linguaggio di programmazione a oggetti “puro”. Il paradigma a oggetti prende sempre più piede e, a partire dalla prima metà degli anni '90, è tra i più utilizzati e studiati. Merito anche della massiccia diffusione dell'interfaccia grafica utente: la programmazione a oggetti, infatti, permette di collegare ogni oggetto visualizzato a schermo ad una determinata porzione di codice, rendendo lo sviluppo del programma più semplice e il codice stesso più “pulito”.

Le caratteristiche dei linguaggi di programmazione a oggetti

Pur nella loro eterogeneità, i linguaggi di programmazione a oggetti condividono caratteristiche comuni e fondanti. Innanzitutto, al di là della diatriba se sia meglio questo o quel linguaggio , bisogna ricordare che quello a oggetti è innanzitutto un modello di programmazione: serve a delineare linee guida per semplificare lo sviluppo di programmi dalla complessa interfaccia grafica. La modularità tipica dei linguaggi orientati agli oggetti, infatti, dà l'opportunità agli sviluppatori di riutilizzare – senza troppi problemi – intere porzioni di codice in programmi anche molto differenti tra loro.

 

Programmazione in corso

 

Lo sviluppo di un programma non è più basato su variabili e codice: questi due elementi sono integrati all'interno degli oggetti o classi, costituiti da uno stato (collezione di variabili) e comportamento (collezione di istruzioni, behaviour in inglese). Le classi corrisponderanno a cose o oggetti esistenti nel mondo reale: un portale di e-commerce avrà classi come prodotti, utenti e carrello della spesa e supporterà comportamenti come effettua ordine, pagamento e offerte.

Gli obiettivi principali della programmazione orientata agli oggetti sono aumentare la comprensibilità del codice e facilitare la manutenzione e l'aggiornamento dei programmi.

A cura di Cultur-e
Segui le ultime notizie sul nostro canale Whatsapp
Immagine principale del blocco
Segui le ultime notizie sul nostro canale Whatsapp
Fda gratis svg
Iscriviti al canale gratuito

Iscriviti
all'area personale

Per ricevere Newsletter, scaricare eBook, creare playlist vocali e accedere ai corsi della Fastweb Digital Academy a te dedicati. Leggi l'informativa