[Linuxtrent] Re: Richiesta aiuto C++

  • From: Flavio Stanchina <flavio.stanchina@xxxxxx>
  • To: linuxtrent@xxxxxxxxxxxxx
  • Date: Thu, 23 Jan 2003 21:28:41 +0100

On Thursday 23 January 2003 09:36, Mario wrote:
> Quoting Luca Manini <manini@xxxxxxxxxxx>:
> >     Il fatto stesso che la cosa sia argomento di discussione la dice
> >     lunga sul valore di C++ come linguaggio OO. Molti programmatori C
> >     conoscono l'assembler e magari ogni tanto ne attaccano anche
> >     qualche riga dal C, ma ...
>
> Sinceramente nella mia piccola esperienza ho potuto notare come più
> un linguaggio è OO più sia complicato utilizzarlo in quanto la
> programmazione OO (che nulla ha a che fare con un linguaggio OO), è
> completamente controintuitiva.

Sull'intuitività della programmazione OO si può discutere: secondo me è 
mooolto meglio, e ti parla uno che ha fatto una certa fatica a capirla e 
che tuttora non è proprio un mago.

Sulla difficoltà in generale non sono affatto d'accordo. Il C++ è un 
linguaggio difficile, decisamente più difficile del C perché appiccica una 
serie di paradigmi OO su un linguaggio che è quasi il contrario e che già 
di suo ha una serie di spigoli affilati, pronti a ferire il programmatore 
incauto. Per esempio: se dal punto di vista del programmatore esperto è 
molto utile poter scegliere tra metodi virtuali e non, quello inesperto 
ogni tanto non capisce perché viene chiamato il metodo sbagliato. Il fatto 
che le stringhe non siano un tipo ma, al più, una classe (e non sempre con 
tutti i metodi utili al posto giusto) genera tutta una serie di problemi.

Poi è ovvio che un programmatore professionista non può essere un 
"inesperto" in senso assoluto, ma non tutti si chiamano Kernighan, 
Stroustrup o Knuth. Un linguaggio che non ti lascia fare errori è meglio 
di uno che ti costringe a pensare con attenzione anche ad alcune cose 
apparentemente banali.

Detto questo, io col C++ mi trovo benone perché ho un'esperienza piuttosto 
lunga col C, conosco alcuni dei problemi del C++ e non mi lascio fregare 
(non spesso ;) da puntatori, metodi virtuali ed altre amenità, anzi, mi 
diverto a scrivere codice complicato. Ma per quasi tutti i programmi utili 
che mi vengono in mente consiglierei il C (ed un'accurata cernita dei 
programmatori) se si tratta di progetti tipo kernel o utility di sistema, 
oppure linguaggi più gentili eventualmente integrati da librerie scritte 
in C dove richiesto.

-- 
Ciao,
    Flavio Stanchina
    Trento - Italy

Information is not knowledge. Knowledge is not wisdom.
Wisdom is not truth. Truth is not beauty. Beauty is not love.
Love is not music. Music is the best.
-- Frank Zappa

-- 
Per iscriversi  (o disiscriversi), basta spedire un  messaggio con SOGGETTO
"subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx


Other related posts: