Il design orientato agli oggetti (OOD) è un tipo speciale di progettazione software sviluppato per sostituire il semplice codice lineare con un tipo di codice che aderisce a convenzioni più complesse. Nella progettazione orientata agli oggetti, il codice si riferisce a un “oggetto” specifico e concettualmente “si adatta” a quell’oggetto per fornire operazioni utente specifiche o altre condizioni. La progettazione orientata agli oggetti è anche chiamata programmazione orientata agli oggetti (OOP).
La progettazione orientata agli oggetti ha guidato lo sviluppo di molte nuove tecnologie comprese quelle relative a Microsoft Visual Basic e alla C Suite (C, C++, C#) di linguaggi di programmazione ancora oggi molto utilizzati. Come modello concettuale per migliori convenzioni del codice software, la programmazione orientata agli oggetti è perfetta per il tipo di applicazioni visive spesso realizzate in Visual Basic, comunemente utilizzate nei sistemi operativi Windows. L’analisi orientata agli oggetti può anche fornire un modo migliore di guardare al “codice grezzo” per capire cosa è all’opera in un programma o un’applicazione specifica.
Un esempio di progettazione orientata agli oggetti riguarda i vari pulsanti, caselle di testo, caselle di immagini, ecc. che sono programmati in applicazioni visive. Ciascuno di questi “oggetti” può contenere un proprio codice specifico che governa il comportamento o l’utilizzo di quell’oggetto. I programmatori possono ulteriormente separare varie istanze di un oggetto in “classi” su cui possono essere utilizzate funzioni o altri moduli di codice.
Nella progettazione orientata agli oggetti, può essere utile un diagramma di sequenza del sistema. Questi diagrammi operano secondo un Unified Modeling Language. Un diagramma di sequenza del sistema (SSD) mostra vari eventi guidati da “attori” che aiutano a definire i comportamenti e gli usi degli oggetti in un programma.
Essendo una forma di codice più versatile rispetto ai vecchi sistemi lineari sviluppati con software primitivo come BASIC e FORTRAN, è probabile che la programmazione orientata agli oggetti continui a guidare i progressi tecnologici nella progettazione del software. Insieme a linguaggi di codifica come XML e altri linguaggi di markup, la programmazione orientata agli oggetti può guidare sia programmi altamente concettuali che altamente funzionali. Questo tipo di progettazione software contribuisce a una filosofia di creazione di oggetti virtuali che serviranno bene alla comunità IT negli sforzi per isolare e migliorare varie funzioni del software, o modellare il software per imitare gli eventi nel mondo fisico. Nel frattempo, la programmazione orientata agli oggetti è diventata una convenzione standard universalmente utile nella comunità dei programmatori di computer.