Io trovo che se si tratta di insegnare le basi della programmazione allora l'abbandonare la scelta "Pascal" per C/C++ o Java trovo che sia un errore.
Mi spiego meglio. Il Pascal è perfetto per muovere i primi passi, è molto più formale del C e si rischia meno di fare errori molto complicati da risolvere per un principiante. E una volta che si è imparato bene il Pascal è veramente semplice passare al C.
Per quanto riguarda la programmazione per oggetti, personalmente non la ritengo inclusa in "insegnare le basi della programmazione" quindi non fa testo. E non mi pronuncio su Pyton perchè non lo conosco.
Ho degli amici che tengono su un server free per wow, l'engine che usano è scritto in c++ e loro devono scrivere in c++ qualunque modifica che fanno quindi per un gioco come wow ci vuole un motore scritto in c++ oppure qualche cosa di creato ad hoc per sviluppare motori grafici.
Concordo ma per imparare a programmare/anche un gioco/ python va benissimo o anche Java
Registrato: 04/04/07 20:28 Messaggi: 4643 Residenza: Internet
Inviato: 24 Gen 2009 01:02 Oggetto:
Allora, distinguiamo due cose: la programmazione atta ad implementare l'algomatica in senso stretto e la programmazione più tecnica.
La prima è quella che si studia a scuola, ordinare un vettore, le besi dei files, calcolare un'area e quelle cose lì.
Per questa va bene qualunque linguaggio: il pascal e il turbo pascal vanno benissimo, sono semplici, rigorosissimi e a parte piccole cose il programmatore si limita a studiare il problema da risolvere.
Nel secondo caso il discorso cambia: il programma da scrivere va studiato, il linguaggio va appreso bene per sfruttare le sue caratteristiche etc..
Tutto dipende da quello che uno deve imparare.
In quest'ottica il pascal a scuola va bene.
Però è anche vero che se a scuola la gente vedesse anche cose un po' più carine sarebbe più incentivata.
Il discorso vale per ogni materia e ad ogni livello.
Perchè la matematica fa schifo a molta gente? Perchè fa fatica a trovare applicazioni pratiche nell'immediato.
Perchè a scuola non vengono mai illustrati problemi particolari con i numeri, per incentivare la gente a conoscerli meglio?
A me la storia a sempre fatto venire la diarrea in modalità: "mucca che defeca acido".
Oggi a volte mi capita di trovare su internet alcune cose che riguardano la storia nostra e straniera e resto attaccato al monitor per ore...
A scuola più che una serie di eventi in certe date non mi spiegavano e io mi rompevo le palle.
Quindi per tornare a noi nella didattica di base della programmazione bisognerebbe usare un linguaggio molto rigoroso ma ogni tanti un salto nella programmazione "moderna" farebbe bene!
Registrato: 01/04/05 17:59 Messaggi: 18597 Residenza: Milano
Inviato: 25 Gen 2009 13:47 Oggetto:
mdweb ha scritto:
Per ragazzi che vogliono lavorare nel mondo della programmazione oggi col pascal ci fai poco o niente
Questo però riguarda un problema/iscussione più vasto e generale.
La scuola insegna a fare ciò che si dovrà fare poi al lavoro (e anche non al lvoro)?
Insegna a scrivere articoli di giornale, libri, recensioni, lettere al/la fidanzato/a, curriculum vitae? No, insegna la grammatica (e pretende che si scrivano temi senza spiegare come si faccia -anzi senza neppure definire cosa sia un "tema"- )
Insegna a stimare quale investimento sia migliore o a quale mutuo sia più adatto? No, insegna a fare calcoli matematici (e in alcuni indirizzi di scuola alcuni fondamenti di economia).
Insegna a fare ricerche storiche? No, insegna alcune vicende soriche (e in alcuni livelli e indirizzi di scuola, le casue e i nessi con le altre vicende).
Eccetera.
Perché aspettarsi che per l'informatica sia diverso?
Per l'informatica e le altre specializzazioni deve essere diverso.
Quelle che hai preso tu sono delle materie di base.Un programmatore deve uscire da un ITI 'proiettato' nel mondo del lavoro.Deve saper scegliere quale linguaggio è meglio usare per... o per...
Registrato: 04/04/07 20:28 Messaggi: 4643 Residenza: Internet
Inviato: 25 Gen 2009 14:21 Oggetto:
Attento però,
un programmatore prima tutto deve saper elaborare algoritmi altrimenti non è un programmatore ma uno scribacchino.
Se io di chiedessi: "In un linguaggio a tua scelta, implementa un algoritmo per verificare se un numero è primo oppure no" tu che cosa scrivi?
Se mi rispondi:" Inserito il numero continuo a dividerlo per gli interi inferiori e se arrivo che nessuno lo divide dico che il numero è primo" io ti boccio perchè se il numero primo è a 800 bit il tempo che impiegheresti e spropositato.
Morale, la scuola dovrebbe dare le basi ad una persona per poter intraprendere percorsi complessi, dare un metodo di studio, la persona poi dovrà arrangiarsi.
Alle superiori non possono spiegarti l'oop estrema,, l'ingegneria del software e tante altre cose perchè oltre allo scrivere del codice c'è dietro tanta altra roba.
Sicuramente però potrebbe scegliere strumenti più consoni e moderni del pascal anche se alla fine per implementare un algoritmo va bene anche lui.
Questo discorso vale per ogni materia e a qualunque livello.
Oggi l'elettronica la si fa con i microcontrollori, c'è sempre meno "circuiteria" e sempre più firmware ma la programmazione nei corsi di elettronica è praticamente nulla; il fatto è che non puoi non spiegare come funziona un diodo o un transistor quindi è un gatto che si morde la coda: occorrerebbe trovare il modo di ampliare i programmi, magari aggiungendo al pomeriggio dei laboratori "seri" senza obbligare però la gente ad andarci perchè altrimenti diventerebbe un lavoro anche quello dello studente (e non è giusto visto che passiamo già la maggior parte della vita a lavorare).
Ovviamente i ragazzi dovrebbero aver voglia di andarci e se tu sei in una classe di 30 persone con 27 "cazzoni" questa idea resta un'utopia perchè i costi non giustificherebbero la cosa.
Quello che mi vien da dire è fregatene e per i fatti tuoi a casa studia quello che vuoi, il diploma, la laurea e tutto il resto sono solo pezzi di carta.
Molte aziende grandi si sono rotte le palle di cercare gente con annunci: "cercasi laureato in questo o in quello" e li hanno sostituiti con "cercasi laureato in questo o persona con conoscenze equivalenti".
In Italia la meritocrazia non esiste se non in rari casi ma se sei bravo lavoro lo trovi senza problemi (non teniamo conto della situazione economica attuale perchè questo è un caso particolare).
Ovviamente hai ragione quando affermi "Un programmatore deve uscire da un ITI 'proiettato' nel mondo del lavoro" ma purtroppo spesso sai anche tu che gli insegnanti sono fermi al pascal perchè conoscono solo quello...
Io questa cosa a scuola l'ho vissuta molto male, cerca di prendere la cosa più alla leggera perchè altrimenti le superiori ti peseranno troppo.
Ovviamente hai ragione quando affermi "Un programmatore deve uscire da un ITI 'proiettato' nel mondo del lavoro" ma purtroppo spesso sai anche tu che gli insegnanti sono fermi al pascal perchè conoscono solo quello...
Poi si chiedono perchè l'Italia è all'ultimo posto
Comunque hai ragione:anche io avrei implementato dividendo numero per numero però semplicemente perchè non conosco i numeri primi quindi non posso sfruttare le loro proprietà.
E come per l'equazione della retta anche li abbiamo diverse soluzioni.(li so quale implementare visto che le ho studiate)
Ti ricordi il contest del palindromi.Anche quello li attraversavo numero-numero quando però questi aumentato è un casino ci vuole troppo tempo.
Però riandiamo lì:tecniche innovative.Infatti ci sono delle tecniche per migliorare il proprio codice:la scuola se ne frega però
Registrato: 02/04/07 11:05 Messaggi: 14300 Residenza: 3° pianeta del sistema solare...
Inviato: 25 Gen 2009 16:55 Oggetto:
mdweb ha scritto:
...Per ragazzi che vogliono lavorare nel mondo della programmazione oggi col pascal ci fai poco o niente
uh?
Dovresti dirlo allo staff di VSO-Software, che utilizzano Delphi (Pascal) per creare gioiellini tipo ConvertXtoDVD (per convertire i filmati AVI in DVD) o BlindWrite (uno dei migliori copiatori di CD esistenti).
O agli autori di GlaryUtilities.
O, anche, alla Auslogics.
E, se ti guardi intorno, ci sono una miriade di altri esempi eccellenti (Kaspersky, se non vado errato).
Anders Hejlsberg, prima di creare il J++, il C# e le WFC, ha creato il TurboPascal e ha contribuito attivamente alla sua "trasformazione" in Delphi.
Migliorare il codice non significa necessariamente imparare un nuovo linguaggio di programmazione.
Non è la quantità di informazioni che hai che può fare di te un buon programmatore, ma la qualità di quello che conosci.
Se con un linguaggio fai programmi mediocri, non è detto che ti vengano meglio con un altro linguaggio... probabilmente è l'approccio mentale al problema da risolvere che ti frega.
edit
Con una piccola ricerca su YouTube, ho trovato questi filmatini:
Per quanto riguarda la programmazione per oggetti, personalmente non la ritengo inclusa in "insegnare le basi della programmazione" quindi non fa testo. E non mi pronuncio su Pyton perchè non lo conosco.
ma intendevo proprio fossero due frasi. La prossima volta metto un "a capo".
Un programmatore deve uscire da un ITI 'proiettato' nel mondo del lavoro.Deve saper scegliere quale linguaggio è meglio usare per... o per...
Utopia. Come dire che quando hai finito scuola guida sei un provetto pilota.
Quando esci dall' ITI non ti è richiesto sapere scegliere il linguaggio di programmazione adatto e non ti è neanche richiesto saper programmare nel linguaggio di programmazione "migliore".
Quello che invece è fondamentale è che tu sappia trovare una soluzione ad un problema e -soprattutto- che tu sappia tradurre questa soluzione in algoritmo. In quale linguaggio non importa, hai idea di quanti linguaggi ci siano "là fuori"? I linguaggi si possono imparare tutti, e si imparano anche in fretta se hai i concetti di base. Te lo dico anche per esperienza personale, a scuola ho studiato il Pascal e nella mia vita lavorativa avrò programmato in 10 linguaggi diversi fino ad oggi...
Registrato: 01/04/05 17:59 Messaggi: 18597 Residenza: Milano
Inviato: 26 Gen 2009 11:58 Oggetto:
SverX ha scritto:
mdweb ha scritto:
Un programmatore deve uscire da un ITI 'proiettato' nel mondo del lavoro.Deve saper scegliere quale linguaggio è meglio usare per... o per...
Utopia. Come dire che quando hai finito scuola guida sei un provetto pilota.
Concordo.
Anche se in teoria da un corso specifico come una scuola guida dovresti uscire, provetto no, ma capace sì.
(Non "ma guarda questo che si è piantato lì in mezzo alla strada e non riesce a fare manovra, avrà appena preso la patente").
(parlo "in teoria" della pratica )
E lo stesso per corsi specifici per diventare programmatore in uno specifico linguaggio
(mi pare ci siano dei corsi post-diploma, almeno un tempo, non so se con la riforma dell'università li abbiano inglobati in corsi universitari.)
Discorso diverso quello che stavamo facendo qui, per ITIS, licei (o università), che non sono un "corso che insegna a fare una cosa" ma sono una scuola, che dà un'istruzione su varie materie.
Quando esci dall' ITI non ti è richiesto sapere scegliere il linguaggio di programmazione adatto e non ti è neanche richiesto saper programmare nel linguaggio di programmazione "migliore".
ma alcune volte viene riechiesto di creare anche un software,o meglio del codice più manutenibile,ma sopratutto più produttivo.
Registrato: 04/04/07 20:28 Messaggi: 4643 Residenza: Internet
Inviato: 26 Gen 2009 14:04 Oggetto:
Si ma come progettare il software lo impari lavorando.
Prendiamo ad esempio un'ipotetica università: al corso di ing informatica spiegano i design pattern, tutti, dal primo all'ultimo.
Ci saranno laboratori in cui provare la teoria, gli studenti vedrebbero qualche cosa ma alla fine? Per quanto cazzuto possa essere il corso, il programma che scriveranno i ragazzi quanto ingegneristicamente parlando sarà complesso?
I problemi di mantenibilità quanto saranno grandi?
I ragazzi alla fine avranno l'idea di che cosa vuol dire design pattern ma poi al lavoro se avranno la necessità di sviluppare roba grossa in team grossi potranno fare pratica e capire effettivamente il design patter, con l'esperienza ci metteranno sempre meno ad apprendere cose nuove etc...
Ogni tipo di scuola deve dare le basi, potrebbe anche dare qualche cosa in più ma alla fine sono i ragazzi che devono capire dove trovare le informazioni e le nozioni di cui hanno bisogno...
Ogni tipo di scuola deve dare le basi, potrebbe anche dare qualche cosa in più ma alla fine sono i ragazzi che devono capire dove trovare le informazioni e le nozioni di cui hanno bisogno...
Tutti i fusi orari sono GMT + 1 ora Vai a 1, 2Successivo
Pagina 1 di 2
Non puoi inserire nuovi argomenti Non puoi rispondere a nessun argomento Non puoi modificare i tuoi messaggi Non puoi cancellare i tuoi messaggi Non puoi votare nei sondaggi