Pubblicazioni
Prima di cominciare a parlare o scrivere in una nuova lingua è essenziale sentirla parlare e vederla scritta da chi già ne ha padronanza. Imparare le regole sintattiche è importante ma non sufficiente, neppure per un linguaggio formale
Java Corso pratico di programmazione
L’ultimo Libro di Donata Savini
Nel testo si propone un “metodo possibile” (uno fra i tanti possibili), ripetutamente sperimentato con la collaborazione di migliaia di studenti. Alla fine del corso, si sarà appreso a scrivere alcuni programmi, pronti ad affrontare la creazione di altri progetti (non esclusivamente in Java).
Le strutture cognitive trasmesse sono innanzitutto, con priorità assoluta, strutture linguistiche. Dijkstra, famoso fisico e informatico olandese (1930-2002), parla della necessità di “eleganza” nella scrittura dei programmi, dove l’approccio corretto consiste nell’elaborare dei pensieri mentalmente, senza tentare di comunicarli finché non sono completi.
Possiamo qui aggiungere che il costante uso corretto di un linguaggio formale può contribuire alla corretta formulazione dei pensieri. Se poi si tratta, come nel caso di Java, di un linguaggio a oggetti, forte è il contributo che la struttura sintattica fornisce all’organizzazione del pensiero.
La proposta di modelli linguistici ben scritti va di conseguenza effettuata contemporaneamente alla presentazione del problema da risolvere, sia esso di tipo matematico o di altro genere. Nel libro vengono proposti centinaia di modelli appositamente scritti per risolvere problemi di tipo eterogeneo, la maggioranza dei quali sottende la capacità di avvalersi delle migliaia di classi appartenenti ai pacchetti del linguaggio Java. E questi stessi modelli aiutano ad orientarsi sul web, dove insieme a programmi molto ben scritti, si trova spesso codice improvvisato e fuorviante, a cui non si dovrebbe in alcun caso fare riferimento.
L’analisi dell’algoritmo è presentata preferibilmente prima in modo discorsivo, ma poi immediatamente formalizzata in Java: non servono metalinguaggi o linguaggi formali intermedi, potrebbe essere fuorviante isolare il problema dalla sua “soluzione linguistica” finale. Infine, procedendo con l’analisi di esempi strutturati e funzionanti contenenti diversi costrutti linguistici in relazione fra di loro, si comunica agli utenti più informazione che non proponendo singoli esempi sintattici separati.
All’inizio la modalità di scrittura del codice può comportare un certo automatismo: si crea un secondo pulsante osservando come è stato creato il primo, si crea (istanza) una classe per poi richiamarne un metodo prendendo esempio da un’operazione analoga, e così via.
Si tratta in realtà di un automatismo costruttivo, che contribuisce a fissare nella mente i modelli linguistici di base indispensabili, i quali consentiranno, in un secondo tempo, la generazione di codice creativo.
La chiave sotto la conchiglia
Sono molte le immagini di cui Karin ha bisogno, le cerca in luoghi diversi perché parti di lei non vadano perdute. In luoghi in cui regolarmente torna e in altri che conserva silenziosamente dentro di sé. La chiave sotto la conchiglia sul davanzale della finestra non c’è più, ma, se lei ne perdesse il ricordo, una parte di Karin smetterebbe di esistere. Ogni evento esistito continua a esistere per sempre, insieme agli eventi presenti, distinguendosi nettamente dal nulla. Non può ignorare uno solo di quegli eventi senza perdere la propria identità. Un’identità che può esprimersi completamente solo in luoghi distinti e con lingue diverse, i viaggi non sono quasi mai solo turistici.