filmeu

Class Introduction to Computing

  • Presentation

    Presentation

    This UC aims to develop knowledge about fundamental concepts of computer architecture and procedural programming using the C programming language. Students should also develop skills in the creation and implementation of algorithms and understand in detail and in depth the organization and functioning of a computer's memory. They should also acquire bases on version control using git. The skills developed in this UC allow a comprehension of what is at the base of high-level programming languages and how to make an efficient program that does a good memory management.

  • Code

    Code

    ULHT1075-2279
  • Syllabus

    Syllabus

    • Module 0 - Course Unit
      • Learning objectives
    • Module 1 - Computer Architecture
      • Computers, operating systems, applications and programming.
      • Numeration systems: conversion between bases; arithmetic operations between different bases.
    • Module 2 - Numbering Systems
      • Conversions between bases.
      • Arithmetic operations between different bases.
    • Module 3 - Linux
      • Terminal, bash console, and main commands.
      • File Manipulation
    • Module 4 - Version Control with Git
      • Configuration, basics, branches/merges, remotes, ways of collaboration, rebase, tags; LFS.
    • Module 5 - Markdown Syntax
      • Documentation and formatting in plain text.
    • Module 6 - Introduction to Python Programming
      • Variables, Data types, Conditions and Cycles, Functions.
    • Modulo 7 - Flowcharts
      • Representing simple programs (with variables, conditions, cycles and functions).
  • Objectives

    Objectives

    • Computer basics: CPU, GPU, memory, cache, operating system, file system and command line
    • Generating documentation with Markdown
    • Version control with Git
    • Basic programming principles with Python and flowcharts
  • Teaching methodologies and assessment

    Teaching methodologies and assessment

    This curricular unit includes theoretical and practical clases.

    The examples used in the class are simpler versions of actual industry practices. The students will have contact with videos, presentations and exercises so that the can practice the theoretical concepts.

  • References

    References

    • Cone, M. (2018). The Markdown Guide. Independently published.

    • Chacon, S. & Straub, B. (2014). Pro Git (2nd Edition). Apress.

    • Matthes, E. (2019). Python Crash Course: A Hands On Project Based Introduction To Programming, 2nd Edition. No Starch Press.

SINGLE REGISTRATION
Lisboa 2020 Portugal 2020 Small Logo EU small Logo PRR republica 150x50 Logo UE Financed Provedor do Estudante Livro de reclamaões Elogios