io ne ho visti, diciamo che tra i programmi recenti, quelli più vecchiotti sono un procedurale mischiato da OOP.
Se applichi vari pattern, o usi OOP o sei morto!!![]()
io ne ho visti, diciamo che tra i programmi recenti, quelli più vecchiotti sono un procedurale mischiato da OOP.
Se applichi vari pattern, o usi OOP o sei morto!!![]()
Ultima modifica di valia; 04-08-2014 a 11:22
RTFM Read That F*** Manual!!!
Per me sei fuori: l'OOP è una salvezza per la maggiorparte degli applicativi, a meno che non stiamo parlando di semplici script.
Rinunciando all'OOP stai rinunciando a:
-manutenibilità del codice,
-riusabilità del codice,
-una via semplice per implementare la maggiorparte dei design patterns
-una via semplice per comprendere/creare diagrammi UML
-astrazione
uno che non sa usare l'OOP o che si rifiuta a mio avviso è fuori dal mondo e dovrebbe capire che la sua generazione non è più adatta ad operarci (se sei giovane mi spiace per te o almeno ti consiglio di darti da fare a impararla)
Poi non c'entra che "scritto bene" il codice procedurale è allo stesso livello, davvero vivi in un mondo in cui sono tutti bravi a scrivere codice? Mettiti nei panni di un poveraccio che deve espandere un codice fatto da qualcun altro..la programmazione procedurale è un vero incubo, ti perdi letteralmente tra funzioni e imports (già nell'OOP incappi in classi scritte con i piedi ed è difficile districarcisi...).
Non sono concetti a primo impatto semplici da capire, questo si. Non è come javascript che apri il sito più fesso che trovi e due settimane capisci tutto, ma neanche stiamo parlando di un qualcosa che richieda necessariamente studi universitari.
E' solo che devi spenderci un po' perchè sono concetti teorici, tutto qua...ma ne sarai ampiamente ripagato.
edit:
...cioè sei dell'88 e conosci solo la programmazione procedurale?? Dove cacchio hai studiato?
Ultima modifica di Dark867; 04-08-2014 a 11:35
guarda, codice vecchio a volte ho il tempo di fare refactoring (della serie butto dentro una piccola modifica ad ogni giro) e devo dire che di alcune cose manco il mio capo si è accorto
quello nuovo, la logica OOP è imposta e appena proviamo a non rispettarla, scatta il taleban mode e ci "crocefiggono in sala mensa!"
RTFM Read That F*** Manual!!!
Mi sa che allora non mi sono spiegato bene sulla storia che una programmazione a oggetti fa perdere tempo.
Capisco che a lavoro uno debba essere etremamente veloce, ma se fai un'analisi logica della situazione che abbia una visione di insieme che superi la giornata lavorativa, ti accorgi che con l'OOP risparmi molto più tempo, esempio.
Scrivi una funzione per un progetto e ci impieghi diciamo 5 minuti. Creare una classe diciamo ti ruba 30 minuti. Nello stesso mese ritrovi la stessa procedura circa, diciamo 10 volte; orbene con codice a oggetto estendi e cambi aggiungendo proprietà e modificando i metodi che ti servono, basandoti sui vecchi e impieghi mediamente 2 minuti, alcune modifiche richiedono anche meno tempo. Allora 30 minuti + 10 x 2 = 50 minuti di tempo che devi spendere per realizzare ciò che ti serve, mentre a livello procedurale avrai impigeato 55 minuti. Nota che la stessa cosa la fai 100 volte alla lunga la programmazione a oggetti ti avrà fatto guadagnare 50 minuti.
Mi dirai adesso che sono una miseria rispetto al tempo necessario per imparare il paradigma, ma a quel punto io ti dico che poi il debug e le altre operazioni aumentano nettamente la forbice, per non parlare poi che se usi framework, come lo zend in PHP, che fornisce classi già preparate che devi solo estendere, sei mostruosamente più veloce di uno che usa le procedure, quei famosi 5 minuti moltiplicati per le migliai di funzioni che uno scrive per progetti in un anno si trasformano in settimane se non mesi di tempo.
E' un paradigma molto complesso ma molto potente e il futuro è a oggetti che piaccia oppure no.
Esatto.
Secondo me il problema di fondo dei "vecchi" programmatori è che pretendono di programmare ad oggetti pensando in logica procedurale. C'è una sorta di rifiuto e di adattamento, invece dovrebbe essere l'opposto: bisognerebbe capire bene il paradigma e pensare in ottica di oggetti e di riuso. Soprattutto bisognerebbe rendersi conto dei vantaggi, è infatti chiaro che se uno è costretto a fare una cosa non solo la farà controvoglia ma anche male.
Alla fine è un po' come l'inglese: se vuoi diventarci bravo devi iniziare prima di tutto a pensare in inglese, pensare in italiano e poi tradurre letteralmente, la maggiorparte delle volte porterà a frasi grossolane o anche errate.
un programma abbastanza grosso e importante scritto in procedurale?
esiste?
Questa volta, più che un voto.. è favoreggiamento.