First cycle
degree courses
Second cycle
degree courses
Single cycle
degree courses
School of Engineering
Course unit
INTRODUCTORY COMPUTER SCIENCE (Ult. numero di matricola dispari)
IN18103361, A.A. 2019/20

Information concerning the students who enrolled in A.Y. 2019/20

Information on the course unit
Degree course First cycle degree in
IN0509, Degree course structure A.Y. 2011/12, A.Y. 2019/20
bring this page
with you
Number of ECTS credits allocated 9.0
Type of assessment Mark
Course unit English denomination INTRODUCTORY COMPUTER SCIENCE
Department of reference Department of Management and Engineering
Mandatory attendance No
Language of instruction Italian
Single Course unit The Course unit can be attended under the option Single Course unit attendance
Optional Course unit The Course unit can be chosen as Optional Course unit

Teacher in charge ANTONIO RODA' ING-INF/05

ECTS: details
Type Scientific-Disciplinary Sector Credits allocated
Other -- -- 3.0
Basic courses ING-INF/05 Data Processing Systems 6.0

Course unit organization
Period First semester
Year 1st Year
Teaching method frontal

Type of hours Credits Teaching
Hours of
Individual study
Lecture 9.0 72 153.0 No turn

Start of activities 23/09/2019
End of activities 18/01/2020
Show course schedule 2019/20 Reg.2011 course timetable

Target skills and knowledge: Learning the basic concepts of computer science and programming. Programming experience in Java programming language. Construction of search algorithms and sorting on data arrays. Design of simple data structures.
Examination methods: The verification of the expected knowledge and skills is carried out by means of a written examination which requires:
1) Questions about the general part of computer science;
2) Theoretical questions about programming in Java programming language;
3) Implementation of programs written in Java language for the resolution of specific problems.
Assessment criteria: The evaluation criteria used to verify the knowledge and obtained skills are:
1. Completeness of knowledge on basic concepts of computing and programming in the Java programming language;
2. Ability to develop algorithms to solve problems;
3. Ability to implement programs in Java language to solve problems.
Course unit contents: General Part:
Representation of data and information. Architecture of the computer. Machine language. Introduction to operating systems. Algorithms and their representation. Sort by selection, insertion, and mergesort. Linear and binary search. Object-oriented programming.

The Java language:
Types of basic data, notions of variable and assignment. Objects, classes and methods. Explicit and implicit parameters. Access and modifier methods; references to objects. Concept of public interface. Instance variables, local variables, and parameter variables. Constructor. Basic types and operators. Conversions, constants, static methods. The String class and the input data reading. Branching instructions and logical operators. Comparison between primitive data and objects. The reference null. Iteration instructions. Nested cycles and sentinel values. Arrays and ArrayList class, associated methods. Enclosures and self-packing. Generalized for cycle. Simple algorithms for vector management (count, find value and maximum/minimum). Copy arrays. Choose classes. Unchangeable classes and side effects. Variables and static methods; scope of visibility of method and variable. Hierarchies of inheritance. Inheritance and rewriting of methods and subclasses. The Object class and its methods.
Planned learning activities and teaching methods: The activities include classroom lessons and laboratory hours. In the classroom lessons with PowerPoint file the course contents are presented. During the laboratory hours, students, divided into groups, solve, with the help of tutors, the programming exercises in Java language assigned by the teacher the week before.
Additional notes about suggested reading: Laboratory session material and additional material are made available on the moodle platform.
Textbooks (and optional supplementary readings)
  • J. G. Brookshear e Dennis Brylow, Informatica: Una panoramica generale (XII edizione). --: Pearson, 2015. Cerca nel catalogo
  • C. S. Horstmann, Concetti di informatica e fondamenti di Java (VI edizione). --: Apogeo, 2016. Cerca nel catalogo

Innovative teaching methods: Teaching and learning strategies
  • Laboratory
  • Problem based learning
  • Working in group
  • Problem solving
  • Auto correcting quizzes or tests for periodic feedback or exams
  • Loading of files and pages (web pages, Moodle, ...)

Innovative teaching methods: Software or applications used
  • Moodle (files, quizzes, workshops, ...)
  • Java Development Kit