Riepilogo rapido:
-
Perché nel mondo reale, prima o poi, devi lavorare con codice procedurale.
-
Perché le lingue procedurali possono funzionare come un'estensione, o un'introduzione, alle lingue orientate agli oggetti, invece di essere solo un'alternativa.
-
Complemento alla risposta 2. Perché O.O.P. è più complesso della Programmazione procedurale, quindi è meglio imparare la Programmazione procedurale, in primo luogo.
-
Perché nel mondo reale, i programmatori lavorano e combinano diversi modi per risolvere i problemi, A.K.A. "programmazione multiparadigm", non solo un singolo paradigma.
-
La maggior parte dei linguaggi di programmazione è multiparadigm, a un certo livello, anche se i loro progettisti o sviluppatori comuni dicono il contrario.
-
[NEW] Poiché la programmazione modulare, comunemente mescolata e confusa con la programmazione procedurale, può essere applicata a O.O.P. Pertanto la domanda può essere letta come "Perché dobbiamo imparare la programmazione modulare prima di apprendere la programmazione orientata agli oggetti"
Descrizione noiosa estesa:
Il punto 1 è molto chiaro, non un'ulteriore spiegazione.
Punto 2, Classi, Ereditarietà, Polimorfismi, Interfacce, ecc.
Punto 3, codice Pascal procedurale prima di imparare Pascal Object Oriented, quando sono arrivato mi sono detto: "guarda, le classi sono come piccoli programmi procedurali ... ... e puoi farli parlare tra loro, cool !!!".
Ho sentito la stessa cosa da persone che passavano dalla semplice C alla C plus plus.
Punto 4, La maggior parte delle volte i programmatori combinano diverse tecniche di programmazione o paradigmi, o modi per risolvere un problema. Funzionale, procedurale, O.O.P., logico.
Anche Java "Pure O.O." non è una programmazione semplice come dice.
+1 punto per "Programmazione procedurale" invece di "Programmazione strutturata".
O programmazione modulare. Questi sono importanti.
Tuttavia, molte volte questi termini sono insegnati insieme e usati in modo intercambiabile, non lo sono.
Programmazione strutturata, include molti concetti, non solo l'uso delle procedure, e uno di questi sta facendo in modo che il programma non assomigli al "Codice degli spaghetti".
Oggi leggo diversi "puri" O.O. programmi che assomigliano al "Codice degli spaghetti orientato agli oggetti", il che significa che il programmatore ha utilizzato O.O.P., ma il suo codice sembra un disastro.
Molte volte, posso leggere un O.O. codice e dire che il programmatore ha appreso la programmazione strutturata prima di O.O.P., perché il codice è chiaro e organizzato.
E per la programmazione modulare, ho visto diverse app. in C ++ e PHP che non usano i moduli. *