- Computer Science - 2
- Summary
Course Syllabus
Obiettivi formativi
Il corso intende presentare, gli scopi, i concetti ed i metodi di base dell’informatica, la struttura e l’evoluzione tecnologica dei sistemi di calcolo automatico e le principali aree applicative
Contenuti sintetici
Introduzione all’Informatica, architettura dell’Elaboratore, soluzione algoritmica dei problemi, basi di dati relazionali ed SQL.
Programma esteso
- Introduzione all’Informatica
- Architettura dell’Elaboratore
- Macchina di Von Neumann
- L’unita’ centrale di elaborazione (CPU)
- Memoria centrale e memoria di massa
- Dispositivi di ingresso-uscita
- Il linguaggio
Python
- Struttura di un programma
- Tipi di dati semplici
- Variabili e assegnamenti.
- Espressioni aritmetiche, relazionali, e logiche.
- Istruzioni decisionali e iterative
- stringhe, liste e file di testo
- Funzioni.
- Basi di dati relazionali ed SQL: modello relazionale, SQL istruzioni DDL e DML
- Sistema Operativo
- Reti di calcolatori.
Prerequisiti
Le conoscenze di tipo matematico e logico acquisite nella scuola superiore. Per potere sostenere l'esame è necessario avere sostenuto e verbalizzato l'esame di Statistica
Metodi didattici
Lezioni frontali. Le lezioni si svolgono nei laboratori didattici per consentire agli studenti di applicare immediatamente i concetti spiegati.
Modalità di verifica dell'apprendimento
La verifica dell'apprendimento comprende una prova scritta e al superamento di essa una prova orale. La prova scritta si svolgerà nei laboratori didattici per valutare le abilità dello studente nell'utilizzo applicazioni per lo sviluppo di software e le sue competenze nella risoluzione di semplici problemi.
Per finalità didattiche, verrà applicato il salto di appello per:
- tutti gli studenti assenti,
- tutti gli studenti gravemente insufficienti,
- tutti gli studenti sorpresi a copiare o a scambiare informazioni con i compagni;
tali studenti non potranno sostenere lo scritto successivo. Agli studenti che si ritirano (cioe' dichiarano di ritirarsi durante lo scritto) non è applicato il salto di appello.
Testi di riferimento
- Per i punti 1, 2, 4 e 5 utilizzare il materiale didattico scaricabile dalla pagina web del corso
- Per il punto 2 utilizzare: Think Python First Edition, by Allen B. Downey (disponibile online) oppure A. Lorenzi, E. Cavalli, V. Moriggia. Linguaggio Python. Atlas
- Per il punto 3 utilizzare: A. Lorenzi, D. Rossi. Le basi di dati. Il linguaggio SQL. Atlas
Periodo di erogazione dell'insegnamento
Secondo semestre
Lingua di insegnamento
Italiano
Learning objectives
The course aim is to introduce the basic concepts of computer science, the structure and evolution of the automation systems and their main application areas.
Contents
Introduction to Computer Science, machine architecture, introduction to Algorithms, data base and SQL.
Detailed program
- Introduction to Computer Science
- Machine architecture
- Von Neumann architecture
- Central Processing Unit (CPU)
- Computer data storage
- Input and output devices
-
Python
programming language
- Program structure
- Primitive data type.
- Variables and assignment.
- Arithmetic, relational and logic expressions.
- Conditional instructions
- Iterative instructions
- string, list, and text file.
- Function: declaration, definition and parameters.
- Data Base and SQL language.
- Relational model
- SQL DDL and DML instructions
- Operating System
- Computer networks
Prerequisites
Mathematical-logical knowledge as acquired during high-school. Statistica
Teaching methods
Frontal lessons. Lessons take place in computer science lab to allow students to immediately apply the concepts explained.
Assessment methods
Learning assessment includes a written exam and, if the student gets a passing grade, an oral exam. The written exam will take place in the teaching laboratories to evaluate the student's skills in using software development kit and their competence in solving simple problems.
Textbooks and Reading Materials
- For 1, 2, 4 and 5 use the didactic material that can be downloaded from the course web page
- For 2: Think Python First Edition, by Allen B. Downey (disponibile online) or A. Lorenzi, E. Cavalli, V. Moriggia. Linguaggio Python. Atlas
- For 3: A. Lorenzi, D. Rossi. Le basi di dati. Il linguaggio SQL. Atlas
Semester
Second semester.
Teaching language
Italian