Vai al contenuto principale
Se prosegui nella navigazione del sito, ne accetti le politiche:
  • Condizioni di utilizzo e trattamento dei dati
Prosegui
x
e-Learning - UNIMIB
  • Home
  • My Media
  • Altro
Ascolta questa pagina con ReadSpeaker
Italiano ‎(it)‎
English ‎(en)‎ Italiano ‎(it)‎
 Login
e-Learning - UNIMIB
Home My Media
Percorso della pagina
  1. Area di Scienze
  2. Corso di Laurea Triennale
  3. Matematica [E3502Q - E3501Q]
  4. Insegnamenti
  5. A.A. 2020-2021
  6. 1° anno
  1. Laboratorio di Matematica e Informatica
  2. Introduzione
Insegnamento Titolo del corso
Laboratorio di Matematica e Informatica
Codice identificativo del corso
2021-1-E3501Q066
Descrizione del corso SYLLABUS

Syllabus del corso

  • Italiano ‎(it)‎
  • English ‎(en)‎
Esporta

Obiettivi

Coerentemente con gli obiettivi formativi del Corso di Studio, l'insegnamento si propone di fornire allo studente  le conoscenze di base riguardanti l' architettura dei sistemi informatici e delle reti di calcolatori, come pure i possibili paradigmi di programmazione. Verranno altresì fornite le competenze necessarie a identificare algoritmi risolutivi a semplici problemi e codificarli in linguaggio di programmazione Java, secondo il paradigma della programmazione imperativa. 

Contenuti sintetici

Architettura di Von Neumann. Componenti e funzionalità di un sistema operativo. Cenni alle reti di calcolatori. Linguaggi di Programmazione. Programmazione strutturata in Java.

Programma esteso

Programma: Architettura dei sistemi informatici

  • Cenni di architettura dei calcolatori e codifica dell'informazione
  • Cenni di sistemi operativi
  • Cenni di reti di telecomunicazioni

Programmazione strutturata in Java

  • Gerarchia dei linguaggi di programmazione, compilatori e interpreti
  •  La Java Virtual Machine
  •  Algoritmi e programmi
  • Tipi di dati primitivi.
  • Strutture di controllo selettive e iterative
  • Array di tipi primitivi
  • Metodi, definizione ed invocazione
  • Ricorsione

Prerequisiti

Nessuno

Modalità didattica

  • Lezione frontale, 4 cfu
  • Laboratorio frontale 2 cfu

Fino all’esaurimento della corrente emergenza sanitaria, le lezioni del presente insegnamento si svolgeranno in una modalità mista, che bilancerà una possibile parziale presenza in aula e una combinazione di lezioni videoregistrate, sincrone o asincrone.  Anche le eventuali lezioni in presenza verranno videoregistrate (lezioni sincrone) e rese usufruibili da remoto.


Materiale didattico

Tutte le informazioni sul corso, le slide presentate a lezione e le esercitazioni da svolgere in laboratorio verranno fornite tramite la piattaforma elearning di ateneo all’indirizzo elearning.unimib.it.

Testo di riferimento:

W. Savitch: "Programmazione di base e avanzata con Java", a cura di Daniela Micucci, 2° edizione, Pearson 

Periodo di erogazione dell'insegnamento

Secondo semestre

Modalità di verifica del profitto e valutazione

Modalità dell’esame

Prova scritta e prova orale facoltativa (a richiesta dello studente). Valutazione con voto in trentesimi 18-30/30. La prova orale, che può riguardare sia domande teoriche che svolgimento di esercizi pratici di programmazione, ha peso inferiore alla prova scritta, determinando un incremento massimo di 4 punti rispetto al risultato della prova scritta ed è necessaria per l'ottenimento della lode. 

Nel periodo di emergenza Covid-19 gli esami orali saranno solo telematici. Verranno svolti utilizzando la piattaforma WebEx e nella pagina e-learning dell'insegnamento verrà riportato un link pubblico per l'accesso all'esame di possibili spettatori virtuali.

Le modalità di svolgimento della prova scritta verranno precisate in seguito.


La prova scritta è divisa in due parti: nella prima si valutano, attraverso una serie di domande a risposta chiusa, le conoscenze dei fondamenti teorici della programmazione strutturata; nella seconda, si valuta, attraverso l'implementazione di un semplice programma software, la capacità di realizzare in pratica un programma in grado di risolvere correttamente un semplice problema applicativo, rispondendo alle specifiche del problema da risolvere e rispettando i principi della programmazione presentati a lezione, senza generare errori (di compilazione, a runtime o logici).

La media aritmetica (eventualmente pesata) dei voti conseguiti nelle due parti definisce il voto proposto allo studente, che, se sufficiente, ha la facoltà di accettarlo o modificarlo attraverso lo svolgimento di un orale integrativo  (eventualmente peggiorandolo nel caso la prova orale non sia soddisfacente). La prova orale può essere sostenuta solo in caso di sufficienza piena. Il docente si riserva la facoltà di richiedere un supplemento di indagine, attraverso una prova orale obbligatoria, nei casi in cui la prova scritta, pur essendo valutata sufficiente, presenti delle criticità: ad esempio, insufficienza nella parte teorica e parte pratica molto soddisfacente, o viceversa.  

Nel corso dell’anno sono previsti 5 appelli d’esame nei seguenti periodi: uno nel mese di giugno, uno a luglio, uno a settembre, uno a novembre e uno a gennaio. Durante il periodo del corso si tengono due prove scritte parziali che, in caso di esito complessivo positivo, permetteranno di verbalizzare il voto o sostenere la prova orale integrativa nel mese di giugno.

Orario di ricevimento

Giovedì, dalle 11 alle 12 o su appuntamento

Nel periodo di emergenza Covid-19 il ricevimento sarà solo telematico. Verrà svolto utilizzando la piattaforma WebEx su richiesta dello studente o su proposta del docente.

Esporta

Aims

This course aims at introducing the basic knowledge of computer systems architecture and networks, as well as different programming pardigms. Moreover, the course will provide competencies to identify algorithms to solve simple problems and implementing them into the Java Programming Language, according to the imperative programming paradigm.

Contents

Von Neumann’s Model of Calculators. Components and functionalities of operating systems. Introduction to Computer Neworks. Programming Languages. Structured Programming in Java.

Detailed program

Architecture of Calculators

  • The Von Neumann model and basic notions on information representation
  • Introduction to Operating Sytstems
  • Basic notions of Computer Networks

Structured Programming in Java

  • Programming languages and translators taxonomy
  • The Java Virtual Machine
  • Algorithms and programs
  • Primitive Data types in Java.
  • Flow Control in Java
  • Arrays of Primitiva Data Types
  • Methods in Java: definition and invocation
  • Introduction to recursive algorithm design and implementation

Prerequisites

Nothing

Teaching form

  • Lessons, 4 credits
  • Laboratory, 2 credits

During the COVID-19 pandemic emergency, lessons will be delivered according to a blended learning approach, exploiting both synchronous and asynchronous recorded lessons. Face to face lessons will be recorded too and shared at distance. 

Textbook and teaching resource

All the information about the course as well as the lessons slides and practical exercises will be available through the learning platform of the University, at the elearning.unimib.it link.

The suggested texdtbook will be:  

W. Savitch: "Programmazione di base e avanzata con Java", a cura di Daniela Micucci, 2nd edition, Pearson

Semester

Second semester

Assessment method

Examination type

 Written and Oral examination; the oral examination is not mandatory, but necessary to obtain a "cum laude" merit. The mark range is 18-30/30. The oral examination is about both theoretical questions and practical exercises and can increase the result of written examination by at most 4 points.  

During COVID-19 pandemic emergency, oral examinations will only be at distance. They will be accomplished through WebEx platform, and a link to the public session will be posted on the course e-learning page.

Detailed information about written examinations will follow. 

The written examination is divided into two parts: the first one is devoted to evaluate theoretical skills aobut structured programming, by means of a collection of close-ended questions; the second one concerns the design and implementation of a simple software program, with the aim to demonstrate the student's capability to solve correctly a simple practical problem, on the basis of programming principles considered during the course, without generating any kind of error (i.e. compile time, runtime, logical errors). 

The arithmetic mean (possibly weighted) of the two marks defines the final mark proposed to the student: in case it is sufficient, the student can accept it as is or modify it by means of an oral examination (possibly decreasing the final mark). Oral examination is possible if and only if written examination is sufficient. The teacher has the faculty to establish mandatory oral examinations for those students whose written examinations, although sufficient, present some criticalities: for example, in case of not sufficient theoretical questions whereas pratical exercises are good, or viceversa.

Five exam sessions are stated: June, July, September, November and January; moreover two partial examinations are proposed to studets during the course.

Office hours

Thursday, between 11 a.m. and 12 a.m., or by appointment. 

During COVID-19 pandemic emergency, students will be received at distance, through WebEx platform, on students' request as well as teacher's proposal.

Entra

Scheda del corso

Settore disciplinare
INF/01
CFU
6
Periodo
Secondo Semestre
Tipo di attività
Obbligatorio
Ore
56
Tipologia CdS
Laurea Triennale

Staff

    Docente

  • HA
    Hamza Amrani
  • CC
    Costantino Carta
  • FS
    Fabio Sartori

Opinione studenti

Vedi valutazione del precedente anno accademico

Bibliografia

Trova i libri per questo corso nella Biblioteca di Ateneo

Metodi di iscrizione

Iscrizione manuale
Iscrizione spontanea (Studente)

Non sei collegato. (Login)
Politiche
Ottieni l'app mobile
Powered by Moodle
© 2025 Università degli Studi di Milano-Bicocca
  • Privacy
  • Accessibilità
  • Statistiche