INTRODUCTION TO PROGRAMMING-1 PRACTICE

Academic year
2018/2019 Syllabus of previous years
Official course title
INTRODUZIONE ALLA PROGRAMMAZIONE-1 ESERCITAZIONI
Course code
CT0441 (AF:297191 AR:163588)
Modality
ECTS credits
0 out of 6 of INTRODUCTION TO PROGRAMMING
Subdivision
Class 1
Degree level
Bachelor's Degree Programme
Educational sector code
INF/01
Period
1st Semester
Course year
1
Where
VENEZIA
The course introduces the basics of computer programming as a way for solving problems. Basic algorithms and programming language fundamentals are discussed in multiple paradigms.
Students will learn the basics of functional programming, as a disciplined and sound programming paradigm, closely related to mathematical formalisms and far from low-level implementation details.
This is ideal for developing a computational thinking and for learning how to write algorithms focusing on solving the problem rather than dealing with intricate aspects related to memory and computer achitecture.
Studends are expected to be able to design and implement simple programs, written in both functional and imperative style. Students' ability to understand the structure of a program and its correctness will be tested as well.
No prerequisite is necessary, except for the national test TOLC-I, mandatory for accessing the course in computer science.
Functional programming and F#:
- Higher-order functions
- Recursion and induction
- Types and type inference
- Lists and pattern matching
- Iteration and functional-imperative hybrid programming
- M. Hailperin, B. Kaiser, K. Knight : Concrete Abstractions, Brooks/Cole Publishing Company, 1999 http://gustavus.edu/+max/concrete-abstractions-pdfs/index.html
- Slides provided by the main professor.
Main Assignment: Project.
The final assignment consists in designing and implementing an application in F# using Visual Studio 2017. The full specification of the program will appear on the moodle page of the course:
https://moodle.unive.it/mod/assign/view.php?id=48196
It consists in writing an F# program that can indent (or format) the source code of an input F# program.

Other Assignments.
On a weekly basis home assignments will check students' commitment to the course program, verifying their programming skills and attitude in writing full programs in small teams of 2.

Discussion.
The project will be discussed and its code commented with the professor, in order to test each student programming skills.
Classes will be take place in laboratory rooms.
written and oral
Definitive programme.
Last update of the programme: 27/11/2018