Syllabus del corso
Obiettivi formativi
Il corso intende presentare: gli scopi generali dell'informatica, i concetti ed i metodi di base, 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 algoritmi dei problemi, basi di dati relazionali ed SQL.
Programma esteso
1. Introduzione all'informatica
2. Architettura dell'elaboratore
- Macchina di Von Neumann (CPU; Memoria centrale e memoria di massa; Dispositivi di I/O)
- Estensioni dell'architettura di Von Neumann
- Rappresentazione di valori numerici (interi e reali)
- Rappresentazione dei caratteri
3. Soluzione algoritmi dei problemi: variabili e tipi di dati; strutture di controllo fondamentali (sequenza, selezione, iterazione)
4. Il linguaggio C:
- Struttura di un programma
- Tipi di dati semplici
- Variabili e assegnazioni
- Espressioni aritmetiche, relazionali e logiche.
- Istruzioni decisionali e iterative
- Stringhe, liste e file di testo
- Funzioni e procedure
5. Basi di dati relazionali e SQL: Modello relazionale, SQL, istruzioni DDL e DML.
6. Sistema operativo.
7. 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 Matematica Generale I
Metodi didattici
Data l'eccezionalità della situazione, le lezioni si svolgeranno a distanza, alternando lezioni registrate (asincrone) con lezioni a distanza ma sincrone secondo un calendario che verrà via via comunicato nella pagina di e-learning.
In aggiunta, il docente sarà a disposizione online in orari che verranno successivamente comunicati.
Anche le attività generalmente laboratoriali saranno riorganizzate secondo modalità realizzabili per tutti.
Modalità di verifica dell'apprendimento
La verifica dell'apprendimento comprende una prova scritta e una eventuale prova orale. poiché l'esame inizialmente di svolgerà a distanza, quindi non ci si avvarrà dei consueti laboratori informatici.
Le attività richieste (domande, esercizi, risoluzione di semplici problemi mediante linguaggio di programmazione o SQL) potranno essere risolvibili dagli studenti anche su carta.
Testi di riferimento
- Mandrioli, Ceri, Sbattella, Cremonesi, Cugola. "Informatica arte e mestiere". McGrawHill - IV edizione
- Deitel Deitel. "Il linguaggio C. Fondamenti e tecniche di programmazione". Pearson (consigliato e per approfondimento, per la parte di programmazione)
Periodo di erogazione dell’insegnamento
Primo 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
1. Introduction to Computer science
2. Machine architecture
- Central Processiong Unit (CPU, Computer data storage, I/O devices)
- Modern computer architectures
3. Introduction to Algorithms: variables and data types; flow control (sequence, selection, iteration)
4. Programming in C language:
- Program structure
- Primitive data type
- Variables and assignments
- Arithmetics, relational and logic expressions
- Conditional and iterative instructions
- String, list and text file.
- Function: declaration, definition and parameters.
5. Data base and SQL language: relational model, SQL, DDL and DML
6. Operating System
7. Computer networks.
Prerequisites
- Mathematical-logical knowledge as acquired during high-school.
- First Mathematics course
Assessment methods
Learning assessment includes a written exam and possibly an oral exam.
Textbooks and Reading Materials
- Mandrioli, Ceri, Sbattella, Cremonesi, Cugola. "Informatica arte e mestiere". McGrawHill - IV edition
- Deitel Deitel. "Il linguaggio C. Fondamenti e tecniche di programmazione". Pearson
Semester
First semester
Teaching language
italian