INFORMATION TECHNOLOGY

INFORMATION TECHNOLOGY

_
iten
Code
66054
ACADEMIC YEAR
2019/2020
CREDITS
9 credits during the 1st year of 8719 Computer Engineering (L-8) GENOVA
SCIENTIFIC DISCIPLINARY SECTOR
ING-INF/05
LANGUAGE
Italian
TEACHING LOCATION
GENOVA (Computer Engineering)
semester
Annual
Teaching materials

OVERVIEW

Software design and development is one of the cornerstones of today's engineering and development of complex systems. Fondamenti di Informatica is an introductory course that describes several basic concepts in a simple and organic way. The course deals with both theoretical topics and practical aspects, the latter related to the development of C/C ++ code.

AIMS AND CONTENT

LEARNING OUTCOMES

The aim of the course is to provide students with skills related to the design and development of software, using C/C ++ as a reference language.

AIMS AND LEARNING OUTCOMES

The specific training objectives are articulated along three lines:

1. Understanding aspects of basic theoretical computer science, related to discrete mathematics.

2. Conceptualization of aspects related to the foundations of programming.

3. Extension of these concepts to the case of modular programming and abstract data types.

At the end of the course the students will be able to translate specifications into a program written in C/C ++ language, structuring it following a series of guidelines defined in the course.

PREREQUISITES

None

Teaching methods

The course includes lectures and practical lessons. Practical lessons imply a series of exercises that students have to do independently, and if they have doubts and observations, ask the tutors for assistance, on a weekly basis.

SYLLABUS/CONTENT

The program of the course develops along three topics:

1. Elements of discrete mathematics: set theory, relations and functions, basic algebraic structures, introduction to combinatorics.

2. Foundations of programming: introduction to computer science (architecture of computers, information coding), introduction to programming (algorithms, programs and programming languages), structured programming in C++ language (variables, constants, types, operators, expressions, conditions, cycles, functions, mono-dimensional arrays, character strings, multi-dimensional arrays, flows and files, structures, arrays of structures), advanced programming in C ++ language (pointers and references, dynamic memory allocation, recursive functions, function templates).

3. Modular programming and abstract data types: classes and objects (methods and attributes, access control to members, types of methods: constructors, destructors, selectors, modifiers, operators, and operator overloads, class templates), abstraction on data (information hiding, types of abstract data, principle of independence from representation), application of abstract data types for the creation of data structures (lists, stacks, queues).

RECOMMENDED READING/BIBLIOGRAPHY

The educational material includes:

- The transparencies presented in classes, available in three different formats: 2 transparencies per page, 4 transparencies per page, 6 transparencies per page;

- The material related to the exercises, which will be made available together with each exercise.

For those wishing to follow a textbook we recommend:

For discrete mathematics related topics: C. Delizia, P. Longobardi, M. Maj, C. Nicotera. Discrete Mathematics, McGraw-Hill (any edition).

For the programming part: L. J. Aguilar. Fundamentals of Programming in C ++. McGraw-Hill (any edition).

TEACHERS AND EXAM BOARD

Ricevimento: Students can make an appointment to meet with the teacher. To set up a meeting with the teacher please make an appointment by sending an email to gualtiero.volpe@unige.it or by calling one of the following telephone numbers: 0103536542 (office), 0102758252 (lab at Casa Paganini).

Ricevimento: The teacher is available as per meeting request by email at: his office on the second floor of the "E" building, Via Opera Pia 13, 16145, Genoa, the EMAROlab, Via Causa 18, 16145, Genoa.

Exam Board

GUALTIERO VOLPE (President)

FULVIO MASTROGIOVANNI (President)

RENATO UGO RAFFAELE ZACCARIA

TULLIO VERNAZZA

PIERPAOLO BAGLIETTO

LESSONS

Teaching methods

The course includes lectures and practical lessons. Practical lessons imply a series of exercises that students have to do independently, and if they have doubts and observations, ask the tutors for assistance, on a weekly basis.

ORARI

L'orario di tutti gli insegnamenti è consultabile su EasyAcademy.

Vedi anche:

INFORMATION TECHNOLOGY

EXAMS

Exam description

The exam consists of a practical test and an oral exam. The practical test can be taken, according to the student's choice, in two different ways: a single practical test at the end of the second semester or two intermediate tests, one after the end of the first semester, and one after the end of the second semester.

Assessment methods

The practical test consists of a computer exam, and can give up to 20 points. For those who choose partial tests, each test can give up to 10 points. Only students who pass the practical test (or the two partial tests) are admitted to the oral exam, in particular according to a threshold that can be defined from time to time and on the basis of the exam. The oral exam provides up to 10 points.

Exam schedule

Date Time Location Type Notes
04/02/2020 09:00 GENOVA Prova pratica
04/02/2020 09:00 GENOVA Compitino
12/06/2020 09:00 GENOVA Prova pratica
03/07/2020 09:00 GENOVA Prova pratica
20/07/2020 09:00 GENOVA Prova pratica
07/09/2020 09:00 GENOVA Prova pratica

FURTHER INFORMATION

None