Programming Styles
Persone
Docente titolare del corso
Assistente
Descrizione
COURSE OBJECTIVES
Strengthen programming skills and understanding of fundamental programming language concepts.
COURSE DESCRIPTION
You are a good programmer. You are fluent in multiple programming languages. But can you program in style? This course is a journey through the landscape of programming languages and idioms. You will discover a multitude of dramatically different programming styles. A style arises from a set of constraints you impose on your code. Styles are independent of a given programming language. You can use many different programming languages to write code in a given style.
*Pre-requisites*:
This course expects participants to already be fluent in at least two different programming languages (ideally Java and JavaScript).
LEARNING METHODS
In this course you won't just hear about and discuss various styles. You will practice those styles. You will look at programming as an art, and like a budding artist—be it a painter, a writer, or a musician—you will practice producing works in multiple artistic styles.
EXAMINATION INFORMATION
Written in-class final exam (if possible).
REFERENCES
- Mandatory textbook: Cristina Videira Lopes. Exercises in Programming Style.
- This course uses Informa as a learning platform.
Check the "Programming Styles" course site, with course themes, topics, skills, labs, readings, and more at https://informa.inf.usi.ch/courses
Offerta formativa
- Master of Science in Artificial Intelligence, Corso a scelta, 1° anno
- Master of Science in Artificial Intelligence, Corso a scelta, 2° anno
- Master of Science in Informatics, Corso a scelta, 1° anno
- Master of Science in Informatics, Corso a scelta, 2° anno
- Master of Science in Software & Data Engineering, Foundation course, 1° anno
- Dottorato in Scienze informatiche, Corso a scelta, Corso, 1° anno (2.0 ECTS)
- Dottorato in Scienze informatiche, Corso a scelta, Corso, 2° anno (2.0 ECTS)