Il corso si articola in lezioni frontali in aula e in esercitazioni al calcolatore in laboratorio.
Modalità:
durante le lezioni frontali si presentano gli aspetti teorici della programmazione (algoritmi, costrutti, strutture dati, ecc.). Inoltre, tramite un calcolatore collegato ad un proiettore, si mostra come tali aspetti si possono implementare al calcolatore.
Per ogni argomento vengono presentati vari esempi di problemi ed i corrispondenti algoritmi e programmi.
Durante le lezioni in laboratorio si richiede agli studenti di realizzare gli stessi programmi visti in aula, e di realizzarne altri che risolvono problemi analoghi.
Strumenti:
per assimilare in modo graduale i concetti di algoritmo e di programma, e i relativi costrutti, all'inizio del corso gli algoritmi vengono definiti tramite vari livelli di astrazione: diagramma di flusso, pseduo-codice, linguaggio di programmazione.
Dato che si tratta di un corso di programmazione di base, i programmi vengono scritti al calcolatore tramite un comune editor di testo. Per abituare gli studenti all'uso del terminale (utile per insegnamenti successivi), la compilazione e l'esecuzione dei programmi avviene dalla riga di comando del terminale. Oltre ai comandi di compilazione ed esecuzione, vengono presentati ed applicati i principali comandi da terminale.
Durante il corso, l'apprendimento viene verificato tramite lo svolgimento di una serie di esercizi per ogni argomento del corso. Ogni esercizio richiede la definizione di un algoritmo e la scrittura in linguaggio C del programma corrispondente.
Durante le lezioni di laboratorio, ogni esercizio viene introdotto, si definisce sommariamente la struttura del programma, si richiede agli studenti di completare in modo autonomo il programma entro un certo periodo di tempo, dopodiché si fornisce la soluzione dell'esercizio per verificare la correttezza.
Alla fine del corso vengono svolte alcune simulazioni di esame, al calcolatore, per consentire agli studenti di rendersi conto di quanto richiesto effettivamente all'esame.
Oltre alle ore di laboratorio, il corso prevede delle ore di tutorato in cui gli studenti possono continuare gli esercizi, chiarire eventuali dubbi, o richiedere che un argomento venga spiegato una seconda volta.
Il corso ha una propria pagina nella piattaforma DIR (Didattica in Rete), che contiene le slide del corso, i programmi presentati in aula, i programmi preparati in laboratorio, i programmi preparati durante il tutorato, le prove d'esame del passato, ecc.
The course consists of frontal lectures and laboratory lectures.
Modality:
during the frontal lectures the theoretical aspects about programming (algorithms, constructs, data structure, etc) are presented.
Moreover, by means of a computer connected to a projector, the way to implement such aspects on a computer, is shown.
For each topic, several examples of problems are presented, together with the corresponding algorithms and programs.
During the laboratory lectures, the students are asked to implement the same programs presented in the frontal lectures, and to implement other programs solving similar problems.
Tools:
in order to gradually learn the concepts of algorithm, program, and their constructs, at the begin of the course, the algorithms are defined through several abstraction levels: flow-chart, pseudo-code, programming language.
Since it is a course on basic programming, the programs are written on the computer by means of an ordinary text editor. In order to make the students familiar with the terminal (useful for the following courses), program compiling and execution is performed through the command line of the terminal. Besides the compiling and execution commands, the main terminal commands are presented and applied.
During the course, learning is verified through a series of exercises for each topic of the course.
Each exercise requires to define an algorithm and write the corresponding program in C language.
During the laboratory lectures, each exercise is introduced, the general program structure is defined, and the students are asked to complete the program in an autonomous way, within a certain amount of time. Then, the solution of the exercise is provided in order to verify the correctness.
At the end of the course, several exam simulation are performed, on the computer, to allow the students to be aware of what is actually required at the exam.
Besides the laboratory lectures, tutoring lectures are available for the students, in order to continue the exercises, clarify doubts, and require to explain a topic for the second time.
The course has its own page in the platform DIR (Didattica in Rete), which contains the slides, the programs shown during the frontal lectures, the programs prepared during the laboratory and tutoring lectures, the exams of the past, etc.
Seguici: