Skip to main content
CODE 118325
ACADEMIC YEAR 2025/2026
CREDITS
SCIENTIFIC DISCIPLINARY SECTOR FIS/03
LANGUAGE English
TEACHING LOCATION
  • GENOVA
SEMESTER 1° Semester

OVERVIEW

The course introduces the student to computing for material science, providing him with the elements of computer science and programming in the scientific field. This includes the use of hardware and software resources to collect and process data, also through the design and implementation of tools such as scripts or applications in various widely used languages, which in turn may exploit preexisting code.

 

AIMS AND CONTENT

LEARNING OUTCOMES

Fundamental concepts of computing and programming in the context ot the most widespread computing systems in STEM with procedural and object-oriented imperative languages ​​and related libraries, learning to develop small programs or modify existing code.

AIMS AND LEARNING OUTCOMES

Attending the course lessons will allow the student to 

- become familiar with Windows/Unix based operating systems, related file systems and code execution in them

- use the appropriate imperative/structural/procedural/object-oriented approach to develop, through different languages ​​and increasingly sophisticated tools, code suitable for collecting, managing, analyzing and visualizing scientific data.

- be able to discuss their own code and understand the code built by third parties - such as libraries, suggestions from generative AI or study/work colleagues

 

PREREQUISITES

There are no specific requirements

TEACHING METHODS

The teaching consists of laboratory lessons in which, after a brief introduction to the topics, the students will develop, under the guidance of the teacher, on available machines or on their personal PC, the code of the project under analysis.

 

SYLLABUS/CONTENT

The program will be carried out through projects of successive difficulty. In them the following will be applied:

1) Principles of computational thinking

2) Introduction to development environments and operating systems

3) Introduction to imperative programming languages ​​(e.g. C++, Python)

4) Structuring the execution flow and control flow of a code

5) procedural subdivision of a code and use of library api

6) use of data structures both custom and present in third-party libraries

RECOMMENDED READING/BIBLIOGRAPHY

Specific indications on reference bibliography will be provided by the professor at the beginning of the lectures. All didactic material will be available on course aulaweb.

TEACHERS AND EXAM BOARD

LESSONS

Class schedule

The timetable for this course is available here: Portale EasyAcademy

EXAMS

EXAM DESCRIPTION

The exam consists of the discussion of a short essay prepared by the student on a programming project of her/his choice.

ASSESSMENT METHODS

The purpose of the exam is to assess the student's ability to design, write, compile, link, execute and debug simple code, and the ability to adapt their code to the needs of third parties. Eligibility will be verified based on the points listed.

FURTHER INFORMATION

Contact the teacher for further information not included in the teaching sheet

Agenda 2030 - Sustainable Development Goals

Agenda 2030 - Sustainable Development Goals
Quality education
Quality education
Gender equality
Gender equality
Decent work and economic growth
Decent work and economic growth