Programmazione Python

Area delle scienze:

Informatica

Classe:

Livello AS/A

Età degli studenti:

17 anni

Tempo complessivo:

2 ore e 30 minuti

Tempo di preparazione

60 minuti

Tempo d’insegnamento

1 ora e 30 minuti

Metodologia didattica da usare:

La metodologia di insegnamento applicata sarà una flipped classroom basata sull’indagine, agli studenti verrà data la conoscenza della programmazione Python insieme all’attività pratica, che comprende 2 lezioni. Le lezioni saranno svolte in maniera pratica, tuttavia la conoscenza di base relativa alla programmazione Python dovrebbe essere data prima che l’indagine pratica inizi.

Concetti chiave:

Introduzione alla programmazione Python, creazione di calcoli, utilizzo di istruzioni IF, procedure e funzioni e creazione di loop. La programmazione pratica di Python permetterà agli studenti di sviluppare script utilizzando il linguaggio Python. Fornisce inoltre agli studenti l’opportunità di implementare e sviluppare tecnologie orientate agli oggetti in un ambiente guidato dagli eventi. Sono in grado di dichiarare i requisiti e progettare, implementare, testare e valutare la loro applicazione.

Panoramica

Svolgere la lezione teorica per sviluppare la conoscenza e la comprensione dei vari approcci allo sviluppo di sistemi complessi, le fasi chiave del processo di sviluppo e gli output prodotti in ogni fase attraverso la programmazione.

Missione dello studente

Sei un ingegnere che lavora in una società di Data Science. L’aumento del volume di email indesiderate chiamate spam ha creato un intenso bisogno di sviluppo di filtri antispam più affidabili e robusti. Devi sviluppare un programma che possa classificare le email come spam, e alcune sono classificate come non spam.

Skill tecniche del 21esimo secolo ottenute tramite quest’attività

Elenco delle competenze:

  • Risoluzione dei problemi,
  • Analisi pratica,
  • Pensiero critico,
  • Trarre conclusioni basate sui fatti,

Apprendimento basato sull’indagine

  • Scienziato dei dati
  • Architetto di applicazioni.
  • Architetto d’impresa.
  • Architetto di dati.
  • Architetto di infrastrutture.

Strategie di diversificazione per soddisfare diverse esigenze didattiche

Peer Mentoring, sviluppo di codici, risoluzione di problemi di vita reale.

Tempo necessario per completare la lezione

Due lezioni di 45 minuti (Se le tue lezioni sono più brevi o più lunghe, puoi spezzare questa sequenza in più lezioni o meno).

Risultati didattici attesi

Introduzione allo sviluppo orientato agli oggetti

Conoscere l’aspetto e le basi del software e migliorare le conoscenze per sviluppare programmi e applicazioni attraverso l’interfaccia grafica.

Software

Definizione dei dati

Strutture di controllo IoT

Strutture di dati

Definire gli oggetti dell’interfaccia grafica utente (GUI) Comprendere gli eventi

Usare moduli multipli

 

Conoscenze e vocabolario precedente

Dati, oggetti, classe, struttura dei dati, eccezione.

Pratiche di scienza e ingegneria/matematica

Fornire agli studenti la stampa della struttura dei dati e sviluppare un piccolo programma per problemi di vita reale per aiutarli con la loro domanda investigativa. Vedi allegato I.

Allineamento del curriculum

CCEA GCE Software System Development:

 

Unità AS 1: Introduzione allo sviluppo orientato agli oggetti

  • Software
    • Dimostrare conoscenza e comprensione dei concetti associati a:

-Sistema software (gestione dei tipi di file/source/binary/executable/XML); e

-Software di sviluppo di applicazioni (piattaforme orientate agli oggetti, incluso l’open source).

  • Definizione dei dati
    • Spiegare e applicare il tipo primitivo; e i tipi di riferimento (oggetto).
    • Identificare e nominare gli oggetti.
    • Spiegare che un oggetto è un’occorrenza di una classe.
    • Identificare e nominare le classi (classi astratte, base ed ereditate).

Esaminare e applicare le funzioni delle classi (riusabilità).

  • Spiegare l’uso di una variabile statica all’interno di una classe.
  • Esaminare e applicare attributi e tipi a una classe.
  • Identificare che gli attributi rappresentano le proprietà di una classe.
  • Identificare l’uso delle interfacce in relazione a classi specifiche.
  • Strutture di controllo del programma
    • Applicare e valutare i principi di base delle strutture di controllo in termini di: sequenza (funzioni sequenziali, metodi); ripetizione (incondizionata, condizionale); e selezione (decisione IF, IF annidato, switch).
  • Oggetti
    • Applicare e discutere i principi di incapsulamento, ereditarietà e polimorfismo, per esempio: visibilità (pubblica, privata e protetta); sovraccarico e sovrascrittura dei metodi.
  • Strutture di dati
    • Spiegare la necessità di memorizzare e organizzare i dati in modo efficiente all’interno di strutture specifiche.
    • Spiegare, progettare e usare le seguenti strutture di dati: stringhe; e array statici (di tipo semplice e di oggetti)
    • Gestione delle eccezioni
    • Spiegare la necessità di essere in grado di intrappolare gli errori nel codice del programma.
    • Spiegare i modi in cui gli errori possono essere intrappolati in un ambiente orientato agli oggetti e applicare le tecniche associate.
    • Try/catch (blocchi).

 

 

Unità AS 2: Programmazione guidata dagli eventi

 

Definire gli oggetti dell’interfaccia grafica utente (GUI)

  • Dimostrare la loro comprensione e l’uso di oggetti GUI nell’implementazione di un’applicazione guidata da eventi.
  • Comprendere e applicare le caratteristiche di: – GUI; e – moduli (componenti comuni).

Capire gli eventi

  • Dimostrare e applicare la loro comprensione degli eventi nell’implementazione di un’ applicazione guidata dagli eventi.
  • Usare trigger, per esempio pulsanti, clic del mouse o pressioni di tasti.

Usare moduli multipli

  • Comprendere l’uso e l’applicazione di forme multiple in un’applicazione guidata dagli eventi.
  • Progettare e implementare moduli multipli per un’applicazione guidata dagli eventi.
  • Implementare una navigazione appropriata:
    • menu
    • barre degli strumenti.
    • pulsanti

Lezione

 Impegnarsi: L’insegnante aiuta gli studenti a riflettere su ciò che già sanno e a identificare eventuali lacune di conoscenza. E’ importante stimolare l’interesse per i concetti futuri in modo che gli studenti siano pronti ad imparare. Gli insegnanti potrebbero incaricare gli studenti di fare domande iniziali o di scrivere ciò che già sanno sull’argomento. Questo è anche il momento in cui il concetto viene introdotto agli studenti per la prima volta.

Gli studenti ricevono questi link video prima della lezione, secondo la strategia della flipped classroom basata sull’indagine. Gli studenti guarderanno i video a casa e completeranno un quiz online relativo ai video. Essi formeranno anche le proprie domande e idee, che saranno sollecitate dall’insegnante attraverso esercizi basati su scenari durante la lezione. L’idea di fare e rispondere alle domande e di formulare idee darà agli studenti una migliore comprensione delle soluzioni della vita reale ai problemi che dovranno risolvere.

Materiali: Link al video, appunti con domande incorporate

 

Prima di 1a lezione:

 

 

Prima di 2a lezione:

 

 

Preparazione prima di ogni lezione: [ 20] Minuti per iniziare la teoria e la pratica.

Facilitazione dell’esperienza di apprendimento: [10] Minuti

Transizione: [ 2] Minuti

L’insegnante: condurrà le sessioni di domande e risposte, spiegherà i concetti all’inizio di ogni lezione

Gli studenti: ascolteranno attentamente, prenderanno appunti e faranno domande

Esplorare: Durante la fase di esplorazione, gli studenti esplorano attivamente il nuovo concetto attraverso esperienze di apprendimento concrete. Potrebbe essere chiesto loro di seguire il metodo scientifico e di comunicare con i loro compagni per fare delle osservazioni. Questa fase permette agli studenti di imparare in modo pratico.

 

Materiali: PC, computer portatili, Pycharm, linguaggio di programmazione

Facilitazione dell’esperienza di apprendimento: [30] Minuti

L’insegnante: Facilitare la comprensione del linguaggio di programmazione e la classe pratica per sviluppare pseudocodici. L’insegnante condurrà conversazioni informali di valutazione per valutare la comprensione degli studenti e offrire loro un prezioso feedback in tempo reale. Questo rafforzerà la caratteristica essenziale della classe basata sull’indagine, dove gli studenti devono dare priorità alle prove raccolte attraverso la ricerca.

  • 1a lezione: Introduzione e comprensione dello sviluppo orientato agli oggetti
  • 2a lezione: capire le basi della programmazione guidata dagli eventi

 

Gli studenti: Sviluppare piccoli programmi e pseudocodici per esempi di vita reale.

Spiegare: Questa è una fase guidata dall’insegnante che aiuta gli studenti a sintetizzare le nuove conoscenze e a fare domande se hanno bisogno di ulteriori chiarimenti. Affinché la fase di spiegazione sia efficace, gli insegnanti dovrebbero chiedere agli studenti di condividere ciò che hanno imparato durante la fase di esplorazione prima di introdurre la tecnica

informazioni in modo più diretto, secondo “The 5E Instructional Model: A Learning Cycle Approach for Inquiry-Based Science Teaching”. Questo è anche il momento in cui gli insegnanti utilizzano video, software per computer o altri aiuti per aumentare la comprensione.

Implementare attività in piccoli gruppi durante l’esplorazione, la spiegazione e l’elaborazione in quanto potrebbero essere utili, a causa dell’apprendimento assistito dai pari. Attraverso le interazioni tra pari, gli studenti possono lavorare insieme per rispondere alle domande da indagare, discutere i loro risultati o applicare la loro conoscenza acquisita a vari compiti insieme.

Materiali: PC, computer portatili, Pycharm, linguaggio di programmazione

Preparazione: [3 0] minuti

Facilitazione dell’esperienza di apprendimento: [5 – 10] Minuti

Transizione: [ 0] Minuti

L’insegnante: spiegherà ulteriormente la teoria dietro lo sviluppo di programmi e applicazioni

Gli studenti: ascolteranno con attenzione e applicheranno le conoscenze

Elaborare: La fase di elaborazione del Modello 5E si concentra sul dare agli studenti lo spazio per applicare ciò che hanno imparato. Questo li aiuta a sviluppare una comprensione più profonda. Gli insegnanti possono chiedere agli studenti di creare presentazioni o condurre ulteriori indagini per rafforzare le nuove competenze. Questa fase permette agli studenti di cementare le loro conoscenze prima della valutazione.

 

Dopo ogni lezione, agli studenti viene chiesto di lavorare in gruppo e di ricercare l’argomento in modo più dettagliato. Poi prepareranno una presentazione come compito a casa, e insegneranno alla classe un aspetto diverso dell’attività di programmazione.

 

Materiali: Software Power Point, appunti degli studenti

Preparazione: Circa [60 ] minuti per gli studenti per effettuare la ricerca e preparare le diapositive

Facilitazione dell’esperienza di apprendimento: [ 10] Minuti per gruppo per presentare la loro lezione

Transizione: [ 0] Minuti

L’insegnante: Valutare una presentazione fatta dagli studenti su ciò che hanno trovato dopo l’attività di programmazione.

Gli studenti lo faranno: Presenteranno all’insegnante e risponderanno a domande pertinenti da parte dell’insegnante per valutare il loro livello di comprensione.

Valutare: Il Modello 5E permette una valutazione sia formale che informale. Durante questa fase, gli insegnanti possono osservare i loro studenti e vedere se hanno una comprensione completa dei concetti fondamentali. E’ anche utile notare se gli studenti affrontano i problemi in modo diverso in base a ciò che hanno imparato. Altri elementi utili della fase di valutazione includono l’autovalutazione, la valutazione tra pari, i compiti di scrittura e gli esami.

 

Agli studenti vengono dati appunti con domande post programmazione e link web a siti di programmazione per estendere la comprensione degli argomenti.

 

L’interrogazione post-programmazione potrebbe essere lasciata fino alla classe successiva se il tempo a disposizione si esaurisce. Agli studenti può anche essere dato un test OPPURE compiti a tempo.

Materiali: Test o compiti a tempo

Preparazione: [ 10 ] Minuti

Facilitazione dell’esperienza di apprendimento: [5] Minuti per fornire agli studenti appunti e domande post programmazione.

[45 -60 ] Minuti per un test o compiti a tempo

Transizione: [ 0 ] Minuti

L’insegnante: indirizzerà gli studenti alle risorse per migliorare la loro comprensione OPPURE presenterà agli studenti una valutazione a tempo basata sulle loro scoperte

Gli studenti: completeranno le domande incorporate dopo aver visto i link video forniti dall’insegnante OPPURE risponderanno alle domande nel modo più completo possibile nel tempo assegnato.

Compiti di apprendimento indipendenti (ILT): Fornire agli studenti due-tre sfide da completare prima della lezione successiva.

 

  • Gli studenti guarderanno i link video dati loro dall’insegnante per migliorare le loro conoscenze e completeranno i relativi quiz online.
  • Gli studenti cercheranno applicazioni nella vita reale di ciò che hanno imparato in
  • Gli studenti risponderanno alle domande dopo la lezione

Gli studenti lavoreranno in gruppi per preparare le presentazioni e presentarle alla loro classe

Feedback dello studente

Agli studenti verrà dato un feedback su base individuale in modo tempestivo. Il feedback farà riferimento ai risultati delle competenze che la valutazione è stata progettata per testare e se lo studente ha soddisfatto tali risultati. Esso prenderà anche in considerazione il feedback dello studente su come ha trovato la lezione.

Tracciamento dei risultati ottenuti

La conoscenza acquisita in questa lezione può essere mappata rispetto allo sviluppo orientato agli oggetti nell’AS/A2 Digital Technology.

Valutazione

Pratica, presentazione degli studenti, valutazione a tempo e domande e risposte.

Materiali

Questo piano di lezione sarà accompagnato dalla configurazione per l’installazione di python.

 

  • Windows 7 a 10, con minimo 2GB di RAM (4GB preferibile)
  • Sistema operativo
  • Python e pacchetti correlati

Fogli di lavoro del programma

Preparazione

Gli studenti dovrebbero guardare i link video forniti e completare i quiz online. Dovrebbero anche tentare le domande nei loro appunti, il Q&A dovrebbe essere condotto dall’insegnante per accertare se gli studenti hanno capito i concetti prima di iniziare la programmazione.

Lavoro di squadra

Gli studenti lavoreranno in squadre per ricercare gli argomenti e preparare una presentazione per la classe riguardante le attività di programmazione. Questa è un’estensione della base di conoscenza, dove gli studenti devono ricercare di più sulla programmazione nella vita reale.

Rubriche

Includere una guida al punteggio per valutare la qualità delle risposte di valutazione degli studenti.

 

Pratica

 

*Opzioni: Più opzioni ci sono, maggiore è l’autonomia dello studente. Gli insegnanti danno agli studenti delle opzioni in modo che lo studente possa sviluppare le sue capacità di problem solving. Più opzioni l’insegnante dà agli studenti, più lo studente ha maggiori opportunità di apprendimento basato sui problemi e di apprendimento indipendente. Questo è misurato rispetto alle rubriche pratiche da zero indipendente a pieno apprendimento indipendente.

Scala di lavoro indipendente
  Indipendenza zero Un sacco di aiuto

con una certa indipendenza

Semi indipendente Completamente indipendente
  L’insegnante dà agli studenti un metodo completo con istruzioni chiare su come sviluppare un codice. L’insegnante dà agli studenti uno schema per la procedura, ma permette opzioni* in diversi passi. L’insegnante specifica l’esempio.

Gli studenti ricercano il metodo per

sviluppare il codice.

Gli studenti scelgono esempi in tempo reale e cercano di risolvere tutti i problemi sviluppando programmi
Osservazione e valutazione delle competenze
Seguire le procedure scritte e orali Gli studenti seguono istruzioni scritte e orali Gli studenti seguono istruzioni scritte e orali, facendo scelte individuali nello sviluppo del codice. Gli studenti seguono un metodo che hanno studiato Gli studenti seguono un metodo che hanno studiato
Utilizza in modo sicuro il computer e i materiali Gli studenti seguono le istruzioni su come usare in sicurezza il

computer.

Gli studenti seguono le istruzioni sull’uso sicuro del computer. Gli studenti riducono al minimo i rischi con un suggerimento minimo. Gli studenti eseguono una valutazione completa dei rischi e minimizzano i rischi.
Registra le osservazioni e i risultati Gli studenti registrano i dati dei risultati in modi specifici. Gli studenti registrano i dati dei risultati in modi specifici. Gli studenti registrano dati precisi e accurati, usando metodicamente Gli studenti scelgono il modo più efficace per registrare dati precisi e accurati

 

      l’esempio appropriato. usando metodicamente

esempio appropriato

Ricerche, I dati sono riportati I dati sono riportati Gli studenti Gli studenti
riferimenti e e le conclusioni e le conclusion tratte. ricercano ricercano
riporta tratte. Gli studenti  Gli studenti metodi alternative
  eseguono confrontano i risultati disponibili. Questi per pianificare
  presentazioni sullo e identificano confrontano i risultati il loro lavoro.
   sviluppo i motivi delle e riportano le I report includono
  di codice con differenze. differenze.  
  tante indicazioni. Gli studenti realizzano delle Il software appropriato pianificazione,
      viene utilizzato realizzazione e
    presentazioni sullo per elaborare i dati un’analisi dei
    sviluppo e reportare  loro risultati.
    di codice con risultati.  Appropriati
    alcune indicazioni. Gli studenti realizzano  software e/o
      presentazioni sullo strumenti sono usati per
        elaborare i dati e
        sviluppo riportare i risultati.
      di codice con Gli studenti
      la minima realizzano
      sollecitazione. presentazioni
        sullo sviluppo
        di codice
        senza l’aiuto
        dell’insegnante.
Analizza i Gli studenti sono Gli studenti sono Gli studenti sono Gli studenti sono
problemi e incapace di in grado di identificare in grado di identificare in grado di identificare
Identifica i identificare qualsiasi un solo input correttamente alcuni correttamente tutti
requisiti: input e o output. input e gli input e output
Identifica output.   output. e fornire
corretti input/       alternative.
output        
Dimostra Gli studenti sono Gli studenti sono Gli studenti sono Gli studenti sono
  incapaci di in grado di costruire in grado di costruire in grado di costruire
Soluzione per il design: costruire un diagramma di flusso o diagrammi di flusso e diagrammi di flusso e
Costruisce diagrammi di flusso o Uno pseudocodice ma pseudocodici pseudocodici
corretto pseudocodici. usando correttamente. correttamente, usando
diagramma di flusso o   simboli errati   correttamente
pseudocodice       elementi,
        simboli e
        documentazione
Applica Gli studenti sono Gli studenti sono Gli studenti sono Gli studenti sono
i richiesti incapaci di in grado di identificare in grado di applicare in grado di applicare
tipo di dati o dati identificare i richiesti i richiesti i richiesti
struttura: i richiesti tipo di tipo di dati o dati tipo di dati o dati tipo di dati o dati
Appropriata dati o dati struttura ma li applicano struttura e struttura e
scelta di struttura.   produrre produrre risultati corretti.
nomi di variabili   correttamente.    

 

o dati     risultati parzialmente corretti.  
struttura (cioè  
array/ collegato  
lista)  
Esegue/debug: Gli studenti sono Gli studenti sono Gli studenti sono Gli studenti sono
Libero da errori di incapace di eseguire un in grado di eseguire un in grado di eseguire un in grado di eseguire un
sintassi, logica, programma. programma ma programma programma
e runtime   hanno un errore logico. correttamente correttamente
      senza alcun senza alcun
      errore logico, ma errore logico e
      Mostra un output Mostra un output
      Inappropriato. Appropriato.
         
Esegue la Il programma degli studenti Il programma degli studenti Il programma degli studenti Il programma degli studenti
Convalida degli input:     funziona funziona
Convalida l’input produce produce risultati corretti e soddisfa tutti le e soddisfa tutti le
per errori e dati risultati errato. ma non specifiche. Esso specifiche. Esso
fuori portata   Viene visualizzato fa un po’ di fa un
    correttamente. Esso controllo di eccezionale
    non controlla errori e dei dati fuori portata. controllo di
    per errori e dati   errori e
    fuori portata.   dei dati fuori portata.
         
Produce Gli studenti sono Il codice degli studenti Il codice degli studenti Il codice degli studenti
programmi incapaci di è scarsamente è abbastanza facile da è estremamente
leggibili: organizzare il organizzato e leggere. ben organizzato
Indentazione / codice. molto difficile da   e facile da
Nominazione   leggere.   seguire.
Convenzione        
Dimostra Gli studenti sono Gli studenti sono Gli studenti sono Gli studenti sono
programma in incapaci di in grado di spiegare solo parzialmente il in grado di spiegare in grado di spiegare
davanti alla spiegare il design  del programma Design del programma l’intera la progettazione del programma
classe .   progettazione del programma correttamente
      correttamente così com’è. e fornire
        soluzioni alternative
Compiti pratici scritti

Allegato

Print or Download

Allegato. I.

Strutture di dati in Python

Installazione di Python

Passo 1: Selezionare la versione di Python da installare.

Passo 2: Scaricare il programma di installazione eseguibile di Python.

Passo 3: Evidenzia il messaggio Install Now (o Upgrade Now) e poi clicca. Passo 4: Esegui il programma di installazione eseguibile.

Passo 4: Esegui il programma di installazione eseguibile. …

Passo 5: verificare che Python sia stato installato su Windows. …

  1. Fare clic sul pulsante Sì.

Una nuova finestra pop-up di installazione di Python 3.9.6 (64-bit) apparirà con un messaggio di progresso dell’installazione e una barra di progresso.

Cliccate sul pulsante Close.

Python dovrebbe ora essere installato.

Passo 6: aggiungere il percorso di Python alle variabili d’ambiente (opzionale)