|
Docente
|
LOMBARDI FLAVIO
(programma)
Introduction to Computer Science; Von Neumann architecture; Computer Architectures; CPU and GPU; Programming Paradigms; Functional and Object Oriented Approaches; Principles of Software Engineering and Modeling; Basic concepts and comparison of Programming Languages; Variables; Control structures (Loops, Conditional Selection), Data structures and algorithms; Computational Complexity; Functions and parameters; Recursion; Sorting algorithms; Input/Output; Concurrency and Parallelism; Networking and Distributed Applications; Version Control; The Art of Documentation; Introduction to Safety, Security and Reliability concepts.
 1. Course Slides
2. David A. Patterson and John L. Hennessy. 2008. Computer Organization and Design, Fourth Edition, Fourth Edition: The Hardware/Software Interface (The Morgan Kaufmann Series in Computer Architecture and Design) (4th ed.). Morgan Kaufmann Publishers Inc., San Francisco, CA, USA.
3. Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne
http://algs4.cs.princeton.edu/
4. http://cslibrary.stanford.edu/101/EssentialC.pdf
5. Thinking in Java http://www.mindview.net/Books/TIJ/
|