CODE 101120 ACADEMIC YEAR 2022/2023 CREDITS 9 cfu anno 1 MARITIME SCIENCE AND TECHNOLOGY 10948 (L-28) - GENOVA SCIENTIFIC DISCIPLINARY SECTOR ING-INF/05 LANGUAGE English TEACHING LOCATION GENOVA SEMESTER 1° Semester TEACHING MATERIALS AULAWEB OVERVIEW The course introduces the student to modern information and communication systems for the processing and management of the information. The course is divided in two parts. The first part focuses on providing the fundamental notions of computer architectures, operating systems, and computer networks. The second part provides the computer programming bases, with emphasis to scientific reasoning and computational thinking. AIMS AND CONTENT LEARNING OUTCOMES The course aims at introducing the student in the field of modern electronic methods for the management of information, related communications and basic methods of calculation.The course follows two distinct strands; the first concerns the study of the architecture of computing systems, the representation of information within them, the organization and operation of networks and of the Internet;the second teaches on the fundamentals of programming. AIMS AND LEARNING OUTCOMES The course is divided in two parts. The first part of the course describes the computer hardware architecture and the computer operating system. In this first part, the students will acquire the fundamental knowledge of computer hardware architecture; computer operating system; computer network architectures and protocols. The second part of the course provides the computer programming bases, with emphasis to scientific reasoning and computational thinking. In the second part of the course students will acquire the ability to face problems of increasing complexity autonomously. Students will acquire the computational thinking and programming principles; the knowledge of the fundamental concepts of imperative programming; the principles of designing, implementing, and validating a small sequential program based on the informal specifications provided by the user; the ability to produce correct and comprehensible code; the ability to understand, use, debug, and modify computer code. PREREQUISITES none. TEACHING METHODS The course will consist of Classroom lessons; Guided laboratories; Homework; Given the contents and the structure of the course, attending classes and laboratories is strongly encouraged and suggested. Working students and students with certified SLD (Specific Learning Disorders), disability or other special educational needs are advised to contact the teacher at the beginning of the course to agree on teaching and examination arrangements so to take into account individual learning patterns, while respecting the teaching objectives. SYLLABUS/CONTENT Introduction to the course Introduction to Computer Architecture, Operating Systems, Computer Networks Computer Programming Introduction to problem analysis and solution design, with examples Computational Complexity Simple algorithms on sequential data: ordering and search Imperative programming: variables and instructions; assignment; input / output; if-then-else; loops; types; arrays; strings; functions; struct; dynamically allocating memory; recursion Programming environments and formal languages Computational thinking and programming RECOMMENDED READING/BIBLIOGRAPHY The following books will be used as reference M. Morris Mano – Computer System Architecture; A. Silberschatz, P. B. Galvin, G. Gagne – Operating System Concepts; A. Tanenbaum, Computer Networks; Stephen G. Kochan - Programming in C B. W. Kernighan, D. M. Ritchie – The C Programming Language. TEACHERS AND EXAM BOARD ENRICO GIUNCHIGLIA Ricevimento: By appointment Exam Board ENRICO GIUNCHIGLIA (President) LUCA VERDERAME DAVIDE ANGUITA (President Substitute) LUCA ONETO (President Substitute) LESSONS LESSONS START https://corsi.unige.it/10948/p/studenti-orario Class schedule The timetable for this course is available here: Portale EasyAcademy EXAMS EXAM DESCRIPTION Written test (with the possibility of split it in a mid-term plus final-term exams) and an oral exam. ASSESSMENT METHODS The final evaluation will take into account: class attendance; the knowledge of the course contents tested with the written exam; the problem-solving skills tested with the homework, written and oral exams; the communication skills tested during the oral exam. Exam schedule Data appello Orario Luogo Degree type Note 11/01/2023 09:00 GENOVA Scritto 08/02/2023 09:00 GENOVA Scritto 07/06/2023 09:00 GENOVA Scritto 05/07/2023 09:00 GENOVA Scritto 15/09/2023 09:00 GENOVA Scritto