<div dir="ltr"><div class="gmail_extra">2013/9/9 Carlos Catucci <span dir="ltr"><<a href="mailto:carlos.catucci@gmail.com" target="_blank">carlos.catucci@gmail.com</a>></span><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div dir="ltr"><div class="gmail_extra"><div class="im"><br></div>Io ho tenuto parecchi corsi e ho notat che i principianti apprendono l'OOP direttamente meglio di coloro che prima passano per l'imperative. Non dico tutti ma un 80% almeno si.<br>



Java poi e' sintatticamente ridondante. </div></div></blockquote><div><br></div><div style>Non ho mai insegnato OOP a gente che non avesse relativamente poca esperienza... ma fare OOP all'inizio non ha funzionato benissimo. Il problema e' che OOP e' una risposta (discutibile) ad una serie di problemi, problemi che i principianti non hanno mai affrontato.</div>

<div style><br></div><div style>L'altro problema e' che fare OOP senza DP ha un utilita' limitata. Non solo: fare OOP senza TDD o almeno unit tests ha grossi problemi (poiche' buona parte dei programmi elementari diventano imperativi e semplicemente volti a manipolare gli oggetti, mentre scrivere i test evita questa parte noiosa e inutile).</div>

<div style><br></div><div style>Sono convinto che si possa partire da OOP, alla fine dei conti. Ma bisogna cambiare tante cose. Per non parlare del fatto che arriva in aula gente cui principalmente manca la capacita' di pensare in maniera logica e schematica. Dopo 6 mesi di corso e' un miracolo se hanno un modello mentale del linguaggio e non lavorano a copia e incolla di pezzi che misteriosamente funzionano. Se poi sanno anche scrivere autonomamente qualche algoritmo elementare, e' praticamente un miracolo.</div>

<div style><br></div><div style>Alla fine dei conti io continuo a pensare che per insegnare la CS che piace a me, il linguaggio giusto fosse scheme. Fine della fiera. Adesso in molte roccaforti di scheme sono passati a Python come primo linguaggio (perche' vogliono insegnare una CS un po' diversa).  <br>

</div></div><div><br></div>-- <br> .<br>..: -enrico-
</div></div>