Go to:
Logótipo
Esta página em português Ajuda Autenticar-se
FCUP
You are in:: Start > Courses/CE or Courses/Cycle of Studies or Programmes/Cycle of Studies > L:CC > Informação para Candidatos
Authentication




Map of Premises
FC6 - Departamento de Ciência de Computadores FC5 - Edifício Central FC4 - Departamento de Biologia FC3 - Departamento de Física e Astronomia e Departamento GAOT FC2 - Departamento de Química e Bioquímica FC1 - Departamento de Matemática

Courses

First Degree in Computer Science

General information

Official Code: 9696
Acronym: L:CC

Certificates

  • Computer Science (180 ECTS credits)

Local Applications

Prazos de Candidaturas e Vagas

Edit Concursos por Regime Scheme Vacancies Deadlines
1 Mudança Par Instituição/Curso - restantes anos curriculares e Mudança Par Instituição/Curso - 1º ano curricular Change of pair institution/cycle of studies - other curricular years 3 2016-06-27 to 2016-07-27
Change of pair institution/cycle of studies - first curricular year 2

Courses Units

Linear Algebra and Analytic Geometry

M1002 - ECTS

Upon completing this course, the student should master the main concepts of Linear Algebra and Analytic GeometryNamely, he must understand, be able to work with and use the main properties of the concepts of matrix, determinant, real vector space and linear function.

Calculus I

M1001 - ECTS

To become acquainted with the basic concepts and techniques of calculus, at the level of real-valued functions of a single real variable, as well as sequences and series.

 

Discrete Structures

CC1001 - ECTS

Study of the fundamental discrete structures that serve as a theoretical basis for the area of Computer Science/Informatics.  

Introduction to Computers

CC1002 - ECTS

The students should be able to undestand how a digital computer works, including concepts in architecture and operating systems, and have a broad perspective of Computer Science.

Imperative Programming

CC1003 - ECTS

To initiate students in imperative programming by presenting fundamental concepts of algorithmics and knowledge of the C programming language. To enable students with the ability of building algorithms from informal specifications. Introduce some fundamental algorithms. 

 

 

 

 

 

 

Calculus II

M1003 - ECTS Understanding and ability to make use of the concepts and results covered in the syllabus, namely through the resolution of exercises of practical nature.

Technical Communication

DPI1001 - ECTS Being able to communicate science and technology from a writing and oral perspective, and with multimedia support. In particular:
To structure and create technical texts. To evaluate technical texts from the perspective of the completion of their context, motivation and conclusions. Creation of multimedia presentations on technical topics. Oral presentation skills issues with multimedia support.

Data Structures

CC1007 - ECTS Reinforce programming skills. Basic data structures, algorithms and programming techniques. Introduction to complexity.

Computer Laboratory

CC1006 - ECTS
This unit  aims at providing key basic technical concepts when using and programming computers, namely in an Unix/Linux environment . It strengthens the knowledge acquired inprevious units, such as Introduction to Computers and Introduction to Porgramming.

Computational Models

CC1004 - ECTS

Teach fundamental concepts and results about three computational models (finite automata, pushdown automata, Turing machines) and the related classes of formal languages, with emphasis on regular and context free languages.

Functional Programming

CC1005 - ECTS

Introduction to functional programming using the Haskell language.

Analysis

M1019 - ECTS

Vector Analysis in curve domains. Line and surface integrals. Integral theorems of Vector Analysis.  
Inverse function theorem, implicit function theorem and its main applications. 
Introduction to methods of solving ordinary differential equations with special emphasis on equations and systems of linear differential equations.

Computer Architecture

CC2002 - ECTS

Introduce the basic working concepts for the modern computer, namely, the internal representation of programs and data, the hardware components and their interactions and ways to evaluate its performance. 

Algorithm Design and Analysis

CC2001 - ECTS

To learn techniques for designing and analyzing algorithms.

Digital Systems

F1002 - ECTS This course provides an introduction to electric circuit theory, basic analog electronics and digital systems.

Human-Machine Interfaces

CC3006 - ECTS

This module will introduce basic concepts of interactive systems design and development, including not only theoretical concepts (usability, user centred design) but also practical ones (low fidelity prototyping via graphical user interface implementation).

Computational Logic

CC2003 - ECTS

 To know the main topics of propositional logic and first order logic, with a special focus on automated therem proving.

Mechanics

F1006 - ECTS

This course aims to present the concepts and the basic principles of Classic Mechanics, and relativity, with emphasis on  understanding and application in the analysis of  real world situations . Students should have the ability to manipulate fundamental concepts and knowi how to apply them to solve problems. Students will be motivated to consider the principles of Mechanics in other areas of knowledge and in technology.

Probability and Statistics

M2016 - ECTS Introductory course in Probability and Statistics: acquisition of basic concepts and application to real situations.
Particular attention will be paid to the presentation and understanding of the concepts, keeping the mathematical treatment at a median level.

Programming in Logic

CC3012 - ECTS - Provide students with fundamental concepts of logic programming
- Allow students to understand programs written in any logical language
- Explain the relationship between logic programming and mathematical logic
- Foster in students the motivation for logic programming
- Introduce students to applications of logic programming practices
- Involve students in practical projects lin ogic programming
- To relate Logic Programming with other disciplines of the course

Web Technologies

CC3008 - ECTS

The goal of this curricular unit is the familiarization of the students with the concepts and technologies used in the development of applications centered on the web.

Group Theory

M2025 - ECTS

To introduce the basic concepts and results of Group Theory, both throught
the classical examples of these structure and in an abstract level.

Software Architecture

CC3034 - ECTS

The objective of this course is to introduce students to the conceptual models and software tools used in large software development projects.

Databases

CC2005 - ECTS

Provide the students with the fundamentals and practice necessary for the design, implementation and analysis of relational databases. 

Artificial Intelligence

CC2006 - ECTS

Objectives: Study fundamental concepts and techniques of general use for Artificial Intelligence.

Operating Systems

CC2004 - ECTS Provide students with the fundamental concepts of the theory and practice of the organization, structure and operation of an operating system.
Be able to implement parts of an operating system and write programs using the API of an operating system.

Software Tools and Applications

CC3007 - ECTS

Provide the student experience in the use, administration and programming of some of the systems / applications currently used in the Windows environment. The particular focus is on the programming environment of Visual Basic for Applications.

Multimedia Systems

CC3013 - ECTS

The proposed syllabus is taught in lectures where the main concepts are introduced and practical examples are explained. During lectures students are also required to do presentations related to the topics presented in the syllabus. In the labs students will learn specific skills related to multimedia systems through the exploration of a specific topic that they have to chose from the syllabus. Students will need to surpass problems by creating a prototype of a system. Students will deploy a project and create an application that must reflect the concepts presented during the lecture. All learning outcomes will help students understand the fundamental principals of multimedia systems and have a direct correspondence to the described syllabus. It covers the state of the art technology and the necessary background to design and develop sophisticated interactive applications. This course aims to teach students how multimedia systems are currently being used in different industries.

 

The goal is to instill in students the same curiosity, passion to discover and desire to convey knowledge that drives researchers to explore new areas related to multimedia systems.

By the end of this course the student are expected to learn and understand state of the art technology related to the following specific concepts:

* Understand which are the principals of 3D animation based on the traditional concepts of 2D animation

* Explore the different types of motion capture systems, virtual reality and how they can work together

* Understand the main concepts related to information theory and data visualization.

* Understand the use of color, text and diagrams when representing information

* Deployment of a multimedia project, create a demo and its correspondent documentation which must reflects its result.

Systems Administration

CC3015 - ECTS

Understanding the roles and procedures performed by network system administrators. Presentation of general principles that further illustrated and consubstantiated with extensive laboratory practice with the implementation and maintenance of some concrete examples of flexible services in critical contexts with simulated faults. 

Compilers

CC3001 - ECTS

Study and implementation of a compiler and interpreter of a programming language.

Internship | Training

CC3010 - ECTS The internship aims to assess the students' ability to meet the real world challenges and to promote their professional integration in  IT companies.

Introduction to Scientific Research

CC3011 - ECTS Provide a first contact with research to students by engaging them in a non trivial task normaly associated with research topics within projects lead by our faculty.

Human-Machine Interfaces

CC3006 - ECTS

This module will introduce basic concepts of interactive systems design and development, including not only theoretical concepts (usability, user centred design) but also practical ones (low fidelity prototyping via graphical user interface implementation).

Programming in Logic

CC3012 - ECTS - Provide students with fundamental concepts of logic programming
- Allow students to understand programs written in any logical language
- Explain the relationship between logic programming and mathematical logic
- Foster in students the motivation for logic programming
- Introduce students to applications of logic programming practices
- Involve students in practical projects lin ogic programming
- To relate Logic Programming with other disciplines of the course

Communication Networks

CC3002 - ECTS

This is an introductory course on data communication networks aimed at familiarizing the students with their fundamental concepts, based on the Internet and the TCP/IP protocol stack.

Web Technologies

CC3008 - ECTS

The goal of this curricular unit is the familiarization of the students with the concepts and technologies used in the development of applications centered on the web.

Software Architecture

CC3034 - ECTS

The objective of this course is to introduce students to the conceptual models and software tools used in large software development projects.

Computability and Complexity

CC3004 - ECTS

Study and comparison of different (Turing-complete) models of computation, their computational power and limitations. Study of the various complexity classes of problems.

After completing this course students are expected to

- know the classical models of computation;
- be able to prove the equivalence of several Turing-complete models;
- know the fundamental results and methods used in the study of computability and complexity;
- be able to classify concrete examples of problems and prove their (un)decidability within several classes of computability;
- be able to classify concrete problems about their time complessity, and understand the consequences of that classification.

Internship | Training

CC3010 - ECTS The internship aims to assess the students' ability to meet the real world challenges and to promote their professional integration in IT companies.

Introduction to Scientific Research

CC3011 - ECTS Provide a first contact with research to students by engaging them in a non trivial task normaly associated with research topics within projects lead by our faculty.

Decision Support Methods

CC3003 - ECTS

Students should:
- get familiar with techniques of operations research and constraint programming
and their application to modeling and solving deterministic and stochastic decision and optimization problems.
- develop skills for understanding computational complexity of concrete problems, and choosing algorithms, programming languages and libraries/APIs for solving them.

Software Tools and Applications

CC3007 - ECTS

Provide the student experience in the use, administration and programming of some of the systems / applications currently used in the Windows environment. The particular focus is on the programming environment of Visual Basic for Applications.

Multimedia Systems

CC3013 - ECTS

The proposed syllabus is taught in lectures where the main concepts are introduced and practical examples are explained. During lectures students are also required to do presentations related to the topics presented in the syllabus. In the labs students will learn specific skills related to multimedia systems through the exploration of a specific topic that they have to chose from the syllabus. Students will need to surpass problems by creating a prototype of a system. Students will deploy a project and create an application that must reflect the concepts presented during the lecture. All learning outcomes will help students understand the fundamental principals of multimedia systems and have a direct correspondence to the described syllabus. It covers the state of the art technology and the necessary background to design and develop sophisticated interactive applications. This course aims to teach students how multimedia systems are currently being used in different industries.

 

The goal is to instill in students the same curiosity, passion to discover and desire to convey knowledge that drives researchers to explore new areas related to multimedia systems.

By the end of this course the student are expected to learn and understand state of the art technology related to the following specific concepts:

* Understand which are the principals of 3D animation based on the traditional concepts of 2D animation

* Explore the different types of motion capture systems, virtual reality and how they can work together

* Understand the main concepts related to information theory and data visualization.

* Understand the use of color, text and diagrams when representing information

* Deployment of a multimedia project, create a demo and its correspondent documentation which must reflects its result.

Recommend this page Top
Copyright 1996-2022 © Faculdade de Ciências da Universidade do Porto  I Terms and Conditions  I Acessibility  I Index A-Z  I Guest Book
Page created on: 2022-08-13 at 20:56:06 | Reports Portal