Saltar para:
Esta página em português Ajuda Autenticar-se
ESTS
Você está em: Start > INF32157
Autenticação




Esqueceu-se da senha?

Campus Map
Edifício ESTS Bloco A Edifício ESTS Bloco B Edifício ESTS Bloco C Edifício ESTS Bloco D Edifício ESTS Bloco E Edifício ESTS BlocoF

Advanced Programming

Code: INF32157     Sigla: PA

Áreas Científicas
Classificação Área Científica
OFICIAL Informática

Ocorrência: 2022/2023 - 1S

Ativa? Yes
Página Web: https://moodle.ips.pt/2122/course/view.php?id=97
Unidade Responsável: Departamento de Sistemas e Informática
Curso/CE Responsável: Informatics Engineering

Ciclos de Estudo/Cursos

Sigla Nº de Estudantes Plano de Estudos Anos Curriculares Créditos UCN Créditos ECTS Horas de Contacto Horas Totais
INF 176 Plano de Estudos 2 - 6 75 162

Docência - Responsabilidades

Docente Responsabilidade
Patrícia Alexandra Pires Macedo

Docência - Horas

Theorethical and Practical : 3,00
Practical and Laboratory: 2,00
Type Docente Turmas Horas
Theorethical and Practical Totais 4 12,00
Bruno Miguel Nunes da Silva 6,00
Patrícia Alexandra Pires Macedo 6,00
Practical and Laboratory Totais 10 20,00
Luís Manuel Dias Damas 10,00
Pedro Emanuel Albuquerque e Baptista dos Santos 4,00
André Manuel Ferreira Sanguinetti 6,00
Mais informaçõesA ficha foi alterada no dia 2022-10-07.

Campos alterados: Métodos de ensino e atividades de aprendizagem

Língua de trabalho

Portuguese
Obs.: Nenhumas

Objetivos


Develop in the student advanced object-oriented programming skills, more specifically:
- Specification and Manipulation of Abstract Data Types of non-linear collections
- Identification, selection and implementation of Software Patterns
- Application of Refactoring Techniques

Resultados de aprendizagem e competências

At the end of the UC the student should be able to:
1- implement non-linear Abstract Data Types (TADs): Trees and Graphs
2 - use non-linear Abstract Data Types (TADs): Trees and Graphs, in the resolution of concrete problems.
3 - recognize the existence of Software Patterns, in the design of applications
4 - select the Software Pattern best suited to a given problem.
5 - implement in JAVA the Software Patterns, starting from its specification.
6 - identify "Bad smells" in code.
7 - apply Refactoring techniques, to improve the internal structure of the code.
8 - use the JUnit API to build unit tests.
9 - apply and use TADs, Software Patterns and refactoring techniques to build robust and scalable software applications in JAVA

Modo de trabalho

Presencial

Pré-requisitos (conhecimentos prévios) e co-requisitos (conhecimentos simultâneos)

The student must dominate the object oriented programming paradigm
The student must be able to master the basic aspects of the JAVA programming paradigm
The student must be able to master the basic principles of algorithmics
The student must have knowledge of the TAD concept, and of the implementation of linear collections (List,Stack, Queue)

Programa

1 - Abstract Data Types (ADTs)
1.1 Introduction to ADTs implementation in JAVA
1.2 Trees : Data structure of type Tree and ADT Tree
1.3 Graphs: ADT Graph
2 - Software Standards
2.1 Design Patterns
2.3 Architecture Patterns
3 - Refactoring
3.1 Bad Smells
3.2 Refactoring Techniques

Bibliografia Obrigatória

António Adrego; Estruturas de Dados e Algoritmos em Java,, FCA, 2011. ISBN: 978-972-722-704-4
Eric Freeman ,Elisabeth Robson, Bert Bates, Kathy Sierra; Head First Design Patterns, OREILLY, 2004. ISBN: ISBN 9780596007126
Martin Fowler; Refactoring: Improving the Design of Existing Code, 2002. ISBN: 978-0201485677

Bibliografia Complementar

Michael T. Goodrich, Roberto Tamassia;; Data Structure and Algorithms in Java, John Wiley & Sons, 2001. ISBN: 0-471-38367-8 (English bibliographie)

Métodos de ensino e atividades de aprendizagem

Theoretical lessons: This type ofclass will be taught remotely, by video conference on the Zoom platform. They resort to the resolution of problematic situations using computational media, in order to introduce the various techniques of advanced programming that make up the program content of the course.

Laboratory classes: the resolution of exercises in a more autonomous way, in a development environment.
Elaboration of practical work throughout the semester, integrating the various techniques taught.

Software

JDK 8.0
IntelliJ (IDE)

Tipo de avaliação

Distributed evaluation without final exam

Componentes de Avaliação

Designation Peso (%)
Teste 50,00
Trabalho laboratorial 50,00
Total: 100,00

Componentes de Ocupação

Designation Tempo (Horas)
Elaboração de projeto 35,00
Estudo autónomo 35,00
Frequência das aulas 75,00
Total: 145,00

Obtenção de frequência

The student can choose between continuous assessment or by examination. In both cases they will have to develop a computer program that will be defended in oral discussion.
1. If you wish to be assessed by examination, you will still have to take an examination in the regular season or in the appeal season, and to pass you will have to have a mark of 9.5 val. or higher in any of the examinations.
2. If you choose continuous assessment (besides the practical work) the student will take 1 mini-test, 4 assessed labs (face-to-face), a test, a video and 5 formative assessment quizzes. If the student is not approved in the continuous regime, he/she will have to take the exam in the regular or appeal season.

T



IMPORTANT NOTES
1. The approval of the Laboratory Practice component is a requirement for approval in the course.
2. Regardless of whether the student chooses to be assessed by exam or by continuous assessment, it is ABSOLUTELY MANDATORY that students enroll in the assessment tests PRIOR TO THE SETTLEMENT DEADLINES. Registration is done through the moodle platform.
Students who are not registered within the deadlines previously established will be denied access to the respective exam.

Fórmula de cálculo da classificação final

Final mark = 50% I+ 50% G


Continued
I = 0,20 Quiz(s) (Q) + 0,25 Quiz (MT) + 0,55 Test (T)

G = 0,15 Labs assessed (L) + 0,7 Project (P) + 0,15* Video (V)

Exam
I = 100% Examination
G = 100% Project

Rule 1 - Each component (I and G) has a minimum mark of 9.5 points
Rule 2 - The minimum grade for the continuous assessment is 7.5
Rule 3 - Each Quiz is marked out of 20. 20 marks. The grade for the Quiz component is the arithmetic mean of the 5 Quizzes.
Rule 4 - The Lab grade is the arithmetic average of the 4 Labs evaluated. The Lab grades will only be valid if the student has not skipped any of the tutorial labs (only two skips are allowed).
Rule 5 - The Labs, the Project, and the video are group works.

Avaliação especial (TE, DA, ...)

The students who are covered by the TE regime, do not have to attend laboratory classes. The Group work component will be calculated with the following formula

G = 0,85 Project + 0,15*Video

Observações

Content and registration for tests available on the  moodle platform
Recomendar Página Voltar ao Topo
Copyright 1996-2024 © Instituto Politécnico de Setúbal - Escola Superior de Tecnologia de Setúbal  I Termos e Condições  I Acessibilidade  I Índice A-Z
Página gerada em: 2024-05-10 às 15:08:52