Vai al contenuto principale
Oggetto:
Oggetto:

Informatica

Oggetto:

Computer Science

Oggetto:

Anno accademico 2015/2016

Codice dell'attività didattica
INT0399
Docente
Prof. Luca Luigi Paolini (Titolare del corso)
Corso di studi
Laurea Triennale Interfacoltà in Matematica per la Finanza e l'Assicurazione
Anno
1° anno
Periodo didattico
Primo semestre
Tipologia
D.M. 270 TAF A - Base
Crediti/Valenza
9
SSD dell'attività didattica
INF/01 - informatica
Modalità di erogazione
Doppia
Lingua di insegnamento
Italiano
Modalità di frequenza
Facoltativa
Tipologia d'esame
Prova pratica
Prerequisiti
Capacita di gestire file e cartelle (creare, salvare, aprire, ...) in ambienti grafici (come quelli forniti da Linux, MacOS, Windows, ...).
Basic management ability with files and folders (create, save, open, ...) in graphic environment (as that provided by Linux, MacOS, Windows, ...).
Oggetto:

Sommario insegnamento

Oggetto:

Obiettivi formativi

Lo studente acquisisce conoscenze di base sull’architettura ed il funzionamento di un elaboratore, sui sitemi operativi, sulle reti e sulla sicurezza. Apprende le basi della programmazione degli elaboratori, e impara a metterle in pratica utilizzando il linguaggio C++.

The student learns the basic knolewdge on computer's architecture, operating systems, networks and security. Moreover, he learn to elementary programming in C++.

Oggetto:

Risultati dell'apprendimento attesi

Lo studente che avrà proficuamente acquisito le competenze offerte dal corso, sarà in grado di comprendere in maniera astratta le problematiche della calcolatore. In particolare, potrà sostenere una discussione a livello di utente informato e competente sul calcolatore stesso e sulle tecnologie ad esse correlate. Inoltre, i rudimenti di programmazione appresi saranno sufficienti a comprendere la logica che permette l'implementazione di programmi iterative su macchine imperative, oltre a poter cogliere alcune sfumature sulla ricorsione e sulla metodologia di sviluppo orientata agli oggetti.

 

Students who have successfully acquired the skills offered by the course,  will be able to understand in an abstract manner the problems of the computer. In particular, they should be able to hold a discussion at the level of user informed about computers and their technologies. Also, they will learn rudiments of programming wich are sufficient to understand the logic that allows the implementation of iterative programs on imperative machines, and in addition they will be able to grasp some of the nuances of recursion and object-oriented development methodology.

Oggetto:

Modalità di insegnamento

 L'insegnamento prevede lezioni, esercitazioni e tutoraggi.

  The course is organized with lessons, exercises and tutoring activity.

 

Oggetto:

Modalità di verifica dell'apprendimento

L'esame consiste in una parte scritta che verte su nozioni di base di informatica generale e da una parte pratica da realizzare al calcolatore. Il voto è in trentesimi. L'esame orale non è obbligatorio (si svolge come lo scritto ma è più approfondito).
The final exam consists of a written part that focuses on the basics of general computer and a practical test to be carried out at the computer. The oral examination is not required.

Oggetto:

Programma

 Informazioni piu dettagliate sul corso sono disponibili alla pagina di supporto alla didattica MOODLE (link a fondo pagina).

Introduzione all'informatica ed alle sue tecnologie

  • Cosa è l'informatica.
  • Rappresentazione dell'informazione: bit, byte, multipli, ascii, unicode, immagini, audio, video.
  • Modello astratto delle macchine di elaborazione e loro possibilita, Architettura e Dispositivi: HW & SW, Tipologie ,Macchina astratta, Bus di sistema, Motherboard,  Chipsets, CPU, Memoria Centrale, Cache,Memorie in Chip, Gerarchia delle Memorie, Dischi Rigidi, I/O, controller e driver, USB, SCSI, Firewire, Video e Connettori.
  •  Cenni ai sistemi operativi ed ai processi: Software, Gestione Processi, Gestione Memoria, Gestione Risorse, File System, Gestione del disco, Librerie di Sistema, Interfacce grafiche e testuali, virtualizzazione, para-virtualizzazione e emulazione.
  • Cenni di reti e sicurezza: Reti, ethernet, CSMA/CD, hub, switch, bridge, router, IP, URL, Wifi e Bluetooth, 2G (GSM, GPRS,EDGE), 3G (UMTS, HDSPA, HSUPA), 4G LTE
Introduzione alla Programmazione
  • Compilazione ed esecuzione di semplici programmi.
  • Elementi dei Programmi e main. Tipi di dati e string. Operatori aritmetici e Precedenze. Espressioni. Conversioni. Costanti, variabili ed enunciati di assegnamento. Operatori di incremento e decremento. Enunciati di output: cout. Direttive per il preprocessore. Impaginazione ed indentazione del codice.
  • Operatori relazionali. Operatori ed espressioni booleani o logiche. Strutture di controllo: if,if-else ,switch.
  • Funzioni predefinite e Funzioni definite. Funzioni Value-returning e Funzioni Void. Passaggio dei parametri per valore e relativo modello di allocazione della memoria.
    Passaggio dei parametri per referenza e relativo modello di allocazione della memoria. Scope (ambito di visibilità) di un identificatore (variabile e/o funzione). Effetti collaterali.
  • Definizioni ricorsive. Esecuzione della ricorsione e allocazione della memoria. Soluzione di problemi mediante ricorsione.
  • Enunciato input (o lettura da tastiera). Messaggi di prompt di Input. Input Failure. Ancora sullo stile di programmazione. Input/output con file: variabili di stream. Cenni ad i manipolatori.
  • Array: generalita. Array di caratteri (C-stringhe). Array bidimensionali e multidimensionali. Dichiarazioni, inizializzazione, limiti nel loro uso nelle funzioni.
  • Ripetizioni: while, for, do-while , break. Annidamento di strutture.
  • Cenni a classi, Costruttori, Astrazione dei dati, classi e tipi di dati astratti, Membri statici di una classe, Differenze tra struct e class.

 

More details can be found at: http://matfin.i-learn.unito.it/course/view.php?id=42

Introduction to computer science technologies

  • What is computer-science. Information representation: bit, byte, multipliers, ascii, unicode, imagines, audio, video.
  • Abstract model of computing machines, architecture and devices: HW & SW, kinds, abstract machine, system bus, Motherboard,  Chipsets, CPU, Central memory, Cache, Memory in Chip, the Hierachy of Memory, hard dsk, I/O, controller e driver, USB, SCSI, Firewire, Video and connectors.
  • Operating systems and processes: Software, Process management, Memory management, Resource management, File System, Disk management, DLL, graphical and textual interfaces, virtualization, para-virtualization and emulation.
  • Nets and security: nets, ethernet, CSMA/CD, hub, switch, bridge, router, IP, URL, Wifi e Bluetooth, 2G (GSM, GPRS,EDGE), 3G (UMTS, HDSPA, HSUPA), 4G LTE

Programming

  • Compiling and executing programs.
  • Basics on Programs and main. Data types and string. Arithmetic operators and priority. Expressions. Conversions. Constants, variables and assignments. Increasing and decreasing operators. Output statement: cout. Preprocessor directives. Indenting and impaginating the source.
  • Relational operators. Boolean and logicla operators. Control structures: if,if-else ,switch.
  • Functions. Value-returning and Void functions. Parameter passing: call-by-value and its memory model. Parameter passing: call-by-reference and its memory model. Scope (visibility) of identifiers (variables, function-names). Side effects.
  • Recursive definitions. Run-time model. Problem solving with recursion.
  •  Input statement (keybord reading). Input propt. Input Failure. Programming style. Input/output with files: stream variables.
  • Array: basics. Array of characters (C-string). Bidimensionali e multidimensional array. Declarations, initializations,  function constraints.
  • Repeatitions: while, for, do-while , break.
  • Class, Construtors, data abstraction, abstract data type, static members of a class, struct and class comparison.

 

Testi consigliati e bibliografia

Oggetto:

D.S. Malik. Programmazione in C++, 2011 APOGEO .

Note addizionali saranno rese disponibili durante il corso alla pagina MOODLE (il link è a fondo pagina).

(An alternative good OPEN-SOURCE book can be found at  http://greenteapress.com/thinkcpp/index.html ).

D.S. Malik. Programmazione in C++, 2011 APOGEO .

Additional notes will be made available during the lectures via MOODLE (a e-learn tool, linked at the bottom of this page).

(An alternative good OPEN-SOURCE book can be found at  http://greenteapress.com/thinkcpp/index.html ).



Oggetto:

Orario lezioni

GiorniOreAula
Oggetto:

Note

   Calendario didatticoORARIO clicca QUI . Per il materiale didattico dell'insegnamento, le regole dettagliate dell'esame, la dimostrazioni da sapere per l'orale e per ulteriori informazioni si veda le pagine moodle.

   Educational calendar. TIMETABLE: click here . Further information can be found in the moodle web-pages.

Oggetto:
Ultimo aggiornamento: 19/04/2016 10:33

Non cliccare qui!