IT SKILLS

Teaching in italian
ABILITA' INFORMATICHE E TELEMATICHE
Teaching
IT SKILLS
Subject area
INF/01
Reference degree course
LANGUAGE MEDIATION
Course type
Bachelor's Degree
Credits
6.0
Teaching hours
Frontal Hours: 36.0
Academic year
2023/2024
Year taught
2024/2025
Course year
2
Language
ITALIAN
Curriculum
PERCORSO COMUNE
Reference professor for teaching
MAINETTI LUCA

Teaching description

Non vi è alcuna propedeuticità per il corso. È preferibile, ma non obbligatorio, disporre di un proprio personal computer, meglio se portatile.

Questo corso insegna come mediare il linguaggio dei sistemi informatici. Con un approccio teorico/pratico fornisce un percorso completo per comprendere come passare da un’idea di sistema digitale alla sua realizzazione attraversando le principali fasi grazie a esempi molto semplici.

Conoscenze e comprensione. Al termine del corso gli studenti: (a) conosceranno le strutture dei sistemi di calcolo; (b) conosceranno come specificare un sistema digitale nello spazio del problema, determinandone i requisiti ed eseguendone l’analisi informativa; (c) comprenderanno come passare dallo spazio del problema allo spazio della soluzione grazie al concetto di architettura software; (d) comprenderanno come realizzare alcuni elementi basilari e molto semplici dell’architettura software in linguaggio Python, avvalendosi anche dell’intelligenza artificiale generativa.

Capacità di applicare conoscenze e comprensione. Gli studenti saranno in grado di applicare le conoscenze acquisite in diversi ambiti applicativi e, in generale, per la codifica al computer in linguaggio Python.

Autonomia di giudizio. Il corso favorisce l'autonomia di giudizio degli studenti attraverso l'analisi critica di problemi di modellazione del software da requisiti funzionali e non funzionali, per i quali trovare le soluzioni adeguate a risolverli in linguaggio Python. Diverse soluzioni proposte interattivamente dagli studenti saranno poste a confronto e valutate criticamente dagli studenti stessi.

Abilità comunicative. Gli studenti apprenderanno come comunicare adeguatamente e con il corretto livello di formalismo le scelte di design adottate e le strategie di implementazione scelte. Il metodo di insegnamento interattivo e teorico/pratico favorirà momenti di confronto in cui mettere in pratica tali abilità comunicative.

Capacità di apprendimento. La materia in costante evoluzione (sia le tecniche di sviluppo orientate agli oggetti, sia i linguaggi che le implementano) richiederà agli studenti la capacità di aggiornarsi e di ricercare materiale on-line, valutandone anche la qualità. Il metodo didattico favorirà l’approfondimento autonomo da parte degli studenti, incuriosendoli su tecniche di sviluppo evolute (vedi intelligenza artificiale generativa).

Lezioni frontali, esercitazioni pratiche svolte preferibilmente con l’uso del personal computer, elaborazione individuale di semplici esercizi.

L'esame prevede una prova orale per la verifica dell'apprendimento dei concetti teorici (verifica delle conoscenze) e della capacità di applicazione dei medesimi, in particolare per la codifica autonoma di semplici frammenti Python (verifica delle competenze). Durante l’esame lo studente potrà usare il proprio personal computer.

Si veda www.studiumanistici.unisalento.it

www.unisalento.it/people/luca.mainetti

Il corso è organizzato in due parti: parte A “spazio del problema”, parte B “spazio della soluzione”.

Parte A (18 ore): Introduzione al corso e alle modalità d’esame (2 ore). Struttura dei sistemi di calcolo (2 ore). Requisiti: raccolta “goal oriented” dei requisiti (2 ore). Requisiti: specifica dei requisiti con “casi d’uso” (2 ore). Requisiti: specifica dei requisiti con “user stories” (2 ore). Dati: analisi dell’architettura informativa (2 ore). Dati: progettazione dell’architettura informativa (2 ore). Dati: realizzazione dell’architettura informativa (2 ore). Software: architetture dei sistemi informatici (2 ore).

Parte B (18 ore): Introduzione ai linguaggi formali e al linguaggio Python (2 ore). Predisporre dell’ambiente di sviluppo e programmare con i numeri (2 ore). Programmare con le stringhe (2 ore). Prendere decisioni (2 ore). Eseguire cicli (2 ore). Creare funzioni (2 ore). Utilizzare liste (2 ore). Usare l’intelligenza artificiale generativa per scrivere programmi in Python (2 ore). Un esempio riassuntivo (2 ore).

Saranno disponibili su https://elearning.unisalento.it le presentazioni preparate dal docente per la parte A.

Testo suggerito per la parte B: Cay Horstmann, Rance D. Necaise, “Python. Introduzione alla programmazione”, Prima Edizione italiana, Apogeo Education, Maggioli Editore, 2023.

Semester
Second Semester (dal 03/03/2025 al 06/06/2025)

Exam type
Compulsory - Other

Type of assessment
Oral - Final judgement

Course timetable
https://easyroom.unisalento.it/Orario

Component by
Information Technology Skills (LB38)

Download teaching card (Apre una nuova finestra)(Apre una nuova finestra)