Vai al contenuto principale
Oggetto:
Oggetto:

Geoinformatics

Oggetto:

Geoinformatics

Oggetto:

Anno accademico 2021/2022

Codice dell'attività didattica
INT1437
Docente
Dott. Gianvito Urgese (Titolare del corso)
Corso di studi
Corso di Laurea Magistrale in Geografia e Scienze Territoriali (LM-80)
Anno
1° anno2° anno
Periodo didattico
Primo semestre
Tipologia
Affine o integrativo
Crediti/Valenza
6
SSD dell'attività didattica
ING-INF/05 - sistemi di elaborazione delle informazioni
Modalità di erogazione
Tradizionale
Lingua di insegnamento
Inglese
Modalità di frequenza
Obbligatoria
Tipologia d'esame
Scritto più orale facoltativo
Prerequisiti

Per il corso non sono previsti prerequisiti particolari. Alcune nozioni di base del calcolo (es. il concetto di funzione) e un minimo livello di confidenza con l'interazione con un computer.

No special prerequirements are expected for the course. Some basic notions of Calculus (e.g., the concept of function) and a minimal level of confidence with the interaction with a computer.
Oggetto:

Sommario insegnamento

Oggetto:

Obiettivi formativi

Python è un linguaggio di programmazione generico che sta diventando fondamentale per ricercatori, operatori e dipendenti che lavorano nel campo della scienza dei dati e dello sviluppo e dell'utilizzo di applicazioni digitali. In questo corso introdurremo i fondamenti del linguaggio di programmazione Python. Gli studenti impareranno a utilizzare i tipi di dati e le variabili per archiviare e manipolare i dati provenienti da diversi tipi di sorgenti di input (tastiera, file, sensori e altro). Inoltre, mostreremo come utilizzare loop e costrutti condizionali per controllare il flusso del programma progettato per implementare un particolare compito. Le principali strutture dati e i moduli della libreria Python verranno discussi e utilizzati in diversi esempi pratici durante lezioni e laboratori.

Questo corso ha un duplice obiettivo:

1) introdurre lo studente alle problematiche 'culturali' e tecnologiche legate all'informatica.
2) insegnare l'uso di un linguaggio di programmazione per computer come mezzo per risolvere problemi reali.

Python is a general-purpose programming language that is becoming fundamental for researchers, operators, and employees working in the field of data science and digital application development & usage. In this course, we will introduce the fundamentals of the Python programming language. Students will learn to use data types and variables to store and manipulate data coming from several types of input sources (keyboard, files, sensors and others). Moreover, we will show how to use loops and conditional constructs to control the flow of the program designed for implementing a particular task. The main data structures and Python library modules will be discussed and used in several practical examples during the lections and laboratories.

This course has a twofold objective:

1) to introduce to the student to the 'cultural' and technological issues related to computer science
2) teaching the use of a computer programming language as a way to solve real problems

Oggetto:

Risultati dell'apprendimento attesi

Lo studente deve acquisire due fondamentali tipi di conoscenza:

1) la capacità di risolvere problemi concreti attraverso programmi implementati utilizzando un linguaggio di programmazione ed eseguiti su un computer.

2) la comprensione degli aspetti quantitativi dell'informatica quali prestazioni, potenza computazionale, rappresentazione dell'informazione, architettura informatica.

Queste abilità saranno applicate alla soluzione di problemi pratici.

The student must acquire two fundamental types of knowledge:

1) the ability to solve concrete problems through programs implemented using a programming language and executed on a computer
2) the understanding of the quantitative aspects of computer science such as performance, computational power, representation of information, computer architecture

These skills will be applied to the solution of practical problems.

Oggetto:

Modalità di insegnamento

60 ore lezioni

60 hours lessons

Oggetto:

Modalità di verifica dell'apprendimento

Criteri, regole e procedure per l'esame ONSITE, ONLINE e BLENDED
Esame: prova scritta tramite vLAIB utilizzando la piattaforma dell'esame e gli strumenti di supervisione (Respondus).
L'esame sarà composto da due parti:

1) Una serie di esercizi di programmazione specifici da sviluppare e consegnare durante il corso. Per ogni compito gli studenti dovranno sviluppare il programma che implementa la soluzione per risolvere il problema assegnato (sulla base degli argomenti presentati a lezione e nei laboratori) e sottoporre il codice al docente per la valutazione.
2) Una prova scritta che mira a valutare la conoscenza da parte dello studente degli aspetti teorici del corso (attraverso esercizi numerici e domande a risposta aperta) e le capacità di programmazione (attraverso la scrittura di un programma Python che implementa la soluzione di un problema pratico) .

Obiettivo principale dell'esame è valutare le capacità di programmazione acquisite dagli studenti durante il corso.
La durata della prova scritta è di 1,5 ore ed è a libro chiuso.
Il punteggio massimo per la prova scritta è di 30 e lode.
Durante la discussione dei risultati della prova scritta, il docente può richiedere una prova orale integrativa che copra l'intero programma del corso e abbia lo scopo di valutare ed elaborare le competenze dello studente.

Assessment and grading criteria for ONSITE, ONLINE and BLENDED exam
Exam: Written test via vLAIB using the Exam platform and proctoring tools (Respondus). 
The exam will consist of two parts:

1) A set of assignments addressing specific programming tasks to be developed during the course. For each assignment, students will have to develop the program that implements the solution to solve the assigned problem (based on the topics presented during lectures and labs) and submit the code to the instructor for evaluation.
2) A written test that aims at assessing the student's knowledge of the theoretical aspects of the course (through numerical exercises and open-answer questions) and the programming skills (through the writing of a Python program that implements the solution of a practical problem).

The main object of the exam is to evaluate the programming skills acquired by the students during the course.
The duration of the written test is 1.5 hours and it is a closed book test.
The maximum score for the written test is 30 cum laude.
During the discussion of the results of the written test, the instructor can request a supplementary oral test that can cover the whole course program and is meant to assess and elaborate the student's skills.

Oggetto:

Programma

PROBLEM SOLVING AND ALGORITHMS [21 HRS]

- Flow charts
- Pseudo-code 
- Design algorithm solution for real problems

Python LANGUAGE [39 HRS]

- Data types
- Numeric constants and variables
- Strings and their manipulation
- Input/Output of numbers and and strings
- Arithmetic operators, powers, and mathematical functions
- Boolean variables and operators
- Control-flow structures (iterative and conditional)
- Functions and calls
- Lists, Sets, and Dictionaries
- Complex data structures (Dictionaries of sets and dictionaries of lists)
- Text Files
- Exceptions handling

Il corso prevede circa 21 ore di laboratorio, in cui gli argomenti trattati nelle lezioni verranno implementati come programmi Python.
Ogni settimana lo studente frequenterà 3 ore di lezione e 1,5 ore di esercitazione/laboratorio.
Le lezioni saranno suddivise in due diverse tipologie:

- Problem-solving: analisi di problemi 'completi', discussione in aula, progettazione con diagrammi di flusso o pseudocodice. Man mano che procediamo con le settimane, gli studenti implementeranno porzioni dell'esercizio gradualmente crescenti.
- Programmazione: illustrazione dei costrutti in linguaggio Python e loro dimostrazione tramite PC.

PROBLEM SOLVING AND ALGORITHMS [21 HRS]

- Flow charts
- Pseudo-code
- Design algorithm solution for real problems Python

LANGUAGE [40 HRS]

- Data types
- Numeric constants and variables
- Strings and their manipulation
- Input/Output of numbers and and strings
- Arithmetic operators, powers, and mathematical functions
- Boolean variables and operators
- Control-flow structures (iterative and conditional)
- Functions and calls
- Lists, Sets, and Dictionaries
- Complex data structures (Dictionaries of sets and dictionaries of lists)
- Text Files
- Exceptions handling

The course includes about 21 hours of lab, in which the topics covered in the classes will be implemented as Python programs.
Each week the student will attend 3 hours of lectures and 1.5 hours of exercise/laboratory.
The lessons will be divided into two different types:

- Problem-solving: analysis of 'complete' problems, classroom discussion, design with flowcharts or pseudo code. As we proceed with the weeks, students will implement gradually increasing portions of the exercise.
- Programming: illustration of the Python language constructs and their demonstration using the PC.

Testi consigliati e bibliografia

Oggetto:

- Handouts of class material.
- Python For Everyone (3rd Edition), Cay S. Horstmann, Rance D. Necaise, ISBN: 978-1-119-49853-7, https://www.wiley.com/en-us/Python+For+Everyone%2C+3rd+Edition-p-9781119498537



Oggetto:
Ultimo aggiornamento: 01/06/2022 09:59
Location: https://www.geografia.unito.it/robots.html
Non cliccare qui!