Corsi Python0 2016: differenze tra le versioni
(→Programma ed orari del corso Linux base) |
(→Programma ed orari del corso Linux base) |
||
Riga 53: | Riga 53: | ||
Se desiderate installare su un vostro PC il sistema operativo GNU/Linux, potete venirci a trovare in sede al martedì sera, dalle ore 19.30 alle 22.20. | Se desiderate installare su un vostro PC il sistema operativo GNU/Linux, potete venirci a trovare in sede al martedì sera, dalle ore 19.30 alle 22.20. | ||
− | =Programma ed orari del corso | + | =Programma ed orari del corso Python da Zero = |
Il corso avrà la durata di 20 ore, suddivise in 8 lezioni da 2.5 ore ciascuna. | Il corso avrà la durata di 20 ore, suddivise in 8 lezioni da 2.5 ore ciascuna. |
Versione delle 14:25, 31 ago 2016
ISCRIZIONI NON ANCORA APERTE!
Il corso
Il Linux User Group di Pordenone con la collaborazione dell'Istituto scolastico comprensivo di Chions,
presenta il suo primo corso Python.
.
Nota:
'Pordenone Linux User Group ha per scopo la diffusione della cultura informatica con particolare riferimento al software libero e a sorgente aperto (Free/Libre Open Source Software, FLOSS), ha quale oggetto associativo la diffusione della cultura del libero scambio del sapere per il progresso comune e l'incentivazione dell'utilizzazione, della promozione, della formazione e dello sviluppo del sistema operativo GNU/Linux e del software libero; l'associazione si propone come luogo di incontro e di aggregazione nel nome di interessi culturali assolvendo alla funzione sociale di maturazione e crescita umana e civile attraverso l'ideale dell'educazione permanente.'
(Art.2 dello statuto)
Per questo motivo alcuni Soci particolarmente competenti in materia si sono resi disponibili per fare da relatori a questo corso. I suddetti relatori-soci NON riceveranno alcun compenso per la loro prestazione (solo il rimborso spese di viaggio) e offriranno la loro prestazione gratuitamente. Ecco spiegato anche il basso costo complessivo del corso (3,00€/h) che servirà a coprire anche le spese sostenute per la realizzazione del materiale cartaceo consegnato ai partecipanti e ai costi del piccolo buffet di fine corso.
Figure di riferimento per l'organizzazione
- Docente: Stefano Morandi, Loris Tissino, Claudio Driussi.
- Tutor: Roby.deb (Roberto Colonello)
Dove
Presso l' Istituto scolastico primario "Berengario Ortis" di Chions
via Mauro De Zorzi, 6 - 33083 Chions (PN)
Dati da OpenStreetMap -
Pubblicati sotto licenza ODbL
INFORMAZIONI ED ISCRIZIONI
Tutte le iscrizioni su come iscriversi le trovate nella Pagina principale corsi
Numero Chiuso
Il numero massimo di iscritti è 15.
Costo
Il costo per i partecipanti soci è di € XX,00.
I soci, che nei ultimi 24 mesi abbiano già frequentato un altro corso PN-Lug,
avranno diritto ad una riduzione pari al 30% dell'importo.
In questo caso, la quota sarà di € XX,00.
Logistica
Verranno utilizzati solo i calcolatori presenti nella classe; non sarà necessario portare il vostro PC. Se desiderate installare su un vostro PC il sistema operativo GNU/Linux, potete venirci a trovare in sede al martedì sera, dalle ore 19.30 alle 22.20.
Programma ed orari del corso Python da Zero
Il corso avrà la durata di 20 ore, suddivise in 8 lezioni da 2.5 ore ciascuna.
Si terrà una lezione a settimana dalle ore 20:00 alle 22:30, il giorno della settimana e la data di inizio non sono ancora stati fissati.
Viene proposto un approccio didattico orientato al "problem solving".
Invece di adottare un percorso sistematico che spiega gli elementi della programmazione e le caratteristiche del linguaggio Python, proponiamo di sviluppare un progetto concreto e con il progredire delle versioni verranno introdotti i vari concetti di programmazione. I relatori saranno a disposizione dei partecipanti per approfondimenti mirati e specifici per portare a compimento i moduli di apprendimento.
Considerando il carattere aperto del programma, gli obiettivi verranno adeguati alla velocità di apprendimento del gruppo e nei limiti del possibile si cercherà di tenere conto delle diverse competenze di partenza dei partecipanti.
Il progetto da sviluppare scelto è il "Gioco dell'impiccato" che abbiamo ritenuto sia particolarmente adatto per questo tipo di metodologia.
Il programma del corso è il seguente e la suddivisione in lezioni non è rigida.
Modulo | Abstract | Contenuti didattici |
---|---|---|
Introduzione |
|
Concetti base della programmazione e strumenti di lavoro |
il programma da sviluppare |
|
Introduzione alle variabili dinamiche liste e dizionari. Applicazioni di strutture logiche. Input/output dei dati. |
Logica e Librerie |
|
Proseguono gli esercizi di logica applicata. Approccio alle librerie di Python. L'ecosistema delle librerie disponibili. |
refactoring e programmazione object oriented |
|
Le motivazioni del refactoring del software. La programmazione OOP e la sua implementazione in Python. I patterns (in particolare MVC) ed alcuni concetti di metaprogrammazione. |
Tutta la documentazione viene rilasciata con licenza CreativeCommons nella versione Attribution-ShareAlike 3.0 se non diversamente specificato.
Proposta temi
Proposta Piovesana
- usare il corso per fare strumenti utili
- ad esempio scaricare le mail o cancellare quelle con certe caratteristiche oppure ...
- io ho scaricato realpython.com con il corso completo - per fare app web con flask, web2py o django, utilizza un metodo formativo molto pragmatico
- condividerei una libreria di sorgenti utilizzati per scopi pratici, ad esempio ho pulito una cartella di immagini *.png in base alla presenza o no in una tabella sqlite dei file correnti
- anche per elaborare file excel e sqlite
Proposta Tissino
- Trovare documentazione
- Primi esempi con cose di base
- Alcune cose sulle funzioni
- Tipi di dati
- Esercizi ed esempi su liste e funzioni
- Organizzazione del codice
- Insiemi e dizionari
- Le classi: esempio di partenza
- Classi, slot e controllo input
- Tipi personalizzati, per così dire
- Elenco campi in una named tuple
- Attributi privati e pubblici
- Proprietà
- Unpacking di sequenze
- File di testo
- Serializzazione e deserializzazione di dati
- File binari
- Programmazione GUI con tkinter
- Tkinter: controllo avanzato dei widget
- Tkinter: menù, timer, eventi
- Tkinter: creazione di un widget
- Funzioni anonime (lambda)
- Strumenti legati alle funzioni
- Ereditarietà e polimorfismo
- Ereditarietà multipla
Proposta Morandi
Direi che potremmo immaginare 4 moduli?
- 101: base base, per chi non ha mai scritto manco mezza riga di codice
- serve un progetto minimale da realizzare
- potrebbe essere un qualcosa legato a IoT?
- leggere 2 dati da un device e infilarli in un CSV, ad esempio
- 102: base.
- qualche concetto di programmazione è richiesto (o il modulo 101)
- introdurrei qui le GUI (Tk fa schifo, ma c'e' di default)
- pizzico di SQL
- lavorare con il CSV e produrre grafico dei dati (corso 101)
- 201:
- sviluppo di un piccolo video game(?) (pygame)
- 202: web.
- realizzare un'applicazione web (django? flask?)
- cosa che non sia una noia tremenda?
Progetto Zanchetta
- Costruire i registratori di cassa per la Sagra di Cimpello 2017.
Proposta Driussi
In seguito alle discussioni tenute nei giorni scorsi, vorrei fare una sintesi delle conclusioni a cui siamo giunti.
- Il corso sarà strutturato secondo un modello di "problem solving", quindi si propone un problema e si cerca una soluzione attivando via via strumenti software di difficoltà crescente che cercano di offrire una panoramica delle potenzialità del linguaggio.
- Il corso avrà degli obiettivi prefissati ed una durata stabilita, ma non avrà un programma rigido, si cercherà di seguire i partecipanti individualmente o per gruppi per dare modo a ciascuno di progredire in base alle proprie conoscenze di base.
- Il progetto scelto per il corso è "Il gioco dell'impiccato" che si presta particolarmente per portare aventi un percorso didattico. Altri progetti più concreti potranno essere sviluppati organizzando gruppi di lavoro.
- L'aula di Chions dispone dei posti di lavoro, per salvare il lavoro svolto si potrebbero usare chiavette, oppure si potrebbe fornire spazio su macchine condivise.
Propongo di fare il punto della situazione con gli interessati ed arrivare ad una definizione più precisa di tutte le tematiche.
DETTAGLI DEI MODULI DEL CORSO
Documentazione a disposizione
- modello di feedback, richiesta dati per i talk
- modello della liberatoria PN LUG per l'installazione Linux sui PC
PC e Hardware a disposizione
- Pc della scuola
Servizio fotografico
PN LUG provvederà con i propri mezzi all'intero evento. Successivamente, condivideremo altro materiale fotografico reso disponibile dai partecipanti a questo evento, tramite il nostro blog associativo principale.