Object-oriented Programming
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Ciências Informáticas |
Ocorrência: 2023/2024 - 2S
Ciclos de Estudo/Cursos
Sigla |
Nº de Estudantes |
Plano de Estudos |
Anos Curriculares |
Créditos UCN |
Créditos ECTS |
Horas de Contacto |
Horas Totais |
TSPSEC |
25 |
Plano Estudos_2015_16 |
1 |
- |
6 |
60 |
162 |
Docência - Responsabilidades
Língua de trabalho
Portuguese
Obs.: Português
Objetivos
-Understand the essential elements of the new programming paradigm. -Know how to define models of reality from the new paradigm. -Understand and apply the fundamental concepts of object-oriented programming using one of the existing object-oriented programming languages.
-Know how to build application solutions according to the object-oriented paradigm using the studied programming language.
-Knowing how to correctly structure the developed code making it robust, reusable and modular.
-Ability to work in a team.
-Capacity of logical and formal reasoning that allows you to analyze complex problems.
-Ability to analyze problems and build their solution using the programming paradigm studied.
-Use data from technical and scientific literature.Resultados de aprendizagem e competências
- The student programs using the main concepts of the object-oriented programming paradigm, namely using classes, objects, and composition and inheritance relationships.Modo de trabalho
Presencial
Pré-requisitos (conhecimentos prévios) e co-requisitos (conhecimentos simultâneos)
Programming using the basic principles of structured programming, namely: - know and use repetition and selection structures - know and use arrays - know and use procedures and functionsPrograma
- Presentation. Discipline Program. Assessment Method.
- Programming languages. Programming Paradigms. Stages of Application Development. Java Development Environment. Notion of Algorithm.
- Structure of a Program. Constant Variables. Basic Data Types. Strings of characters. Assignment. Logical Arithmetic Expressions. Message Writing and Data Entry
- Selection Instructions (if, if-else, Switch-case).
- Repetition Statements (while, dowhile, for).
- Methods (subprograms), parameters (formal and concrete) and return value. Visibility of variables and methods. Local and global variables.
- Classes (attributes, methods and constructors) and Objects; encapsulation; and Composition.
- Collection classes.
- Search Algorithms.
- Sorting Algorithms.
- Class inheritance.
- Notions of text and binary files. Serialization.Bibliografia Obrigatória
José Brás; Sebenta para a Unidade Curricular de Programação Orientada a Objetos, 2ª Edição, EST Setúbal, 2022
Bibliografia Complementar
F. Mário Martins; Java 8 - POO + Construções Funcionais, FCA, 2017. ISBN: 978-972-722-838-6
Bertrand Meyer; Object Oriented Software Construction – 2nd Ed, Prentice-Hall, 1997. ISBN: 978-0-1362-9155-8
Métodos de ensino e atividades de aprendizagem
Essentially practical and laboratory teaching.
In practical theoretical classes the theoretical material is briefly covered using slides and extensively illustrated using examples executed in the programming environment (API) of the chosen language. The laboratory classes are dedicated to the (accompanied) execution of laboratory statements at five levels in which the execution of the first two corresponds to the minimum theoretical knowledge (knowing how) and practical (knowing how to do) required and the 5th level to a total capacity of autonomous work.
Theoretical-practical classes: Expository method and problem solving in class.
Lab Classes: Problem solving and implementation of the programming solution.Software
Java Development Kit (JSE)
IDE Apache NetBeans
Palavras Chave
Physical sciences > Computer science > Informatics
Physical sciences > Computer science > Programming
Tipo de avaliação
Distributed evaluation without final exam
Componentes de Avaliação
Designation |
Peso (%) |
Participação presencial |
10,00 |
Teste |
80,00 |
Trabalho laboratorial |
10,00 |
Total: |
100,00 |
Componentes de Ocupação
Designation |
Tempo (Horas) |
Estudo autónomo |
45,00 |
Frequência das aulas |
75,00 |
Trabalho laboratorial |
42,00 |
Total: |
162,00 |
Obtenção de frequência
A) Continuous evaluation :
-> 2 Tests in IDE (60%)
NT = (NT1 + NT2) / 2
-> 1 Mini-tests in IDE (20%)
NMT = (NMT1 + NMT2 + NMT3) / 3
-> 3 Quizz Assincronous and presential (10%)
Quizz [i] = 30% Qu. Assincronous + 70% Qu. Presencial
NQ = (Qu1+Qu2+Qu3)/3
-> 3 Colective work (10%)
NL = (LAB1 + LAB2+LAB3)/3
NFINAL= 60% NT + 20% NMT + 10%NQ + 10%
************************************************
B) Regular and Appeal Season Exam:
Students who do not obtain the frequency in continuous assessment will be evaluated through an exam and a mandatory Individual Autonomous Work with minimal grade > 8.
Final grade (NF) NF = Exam*70% + (NTIA * 30%) * DTIA)
NTIA - Self-Employed Individual Work Score
DTIA – Discussion of Autonomous Individual Work - coefficient between 0 and 1.
NTIA > 8.
Autonomous Individual Work (TIA) in 3 stages (TIA1, TIA2, TIA3)
TIA1 - Requirements analysis and specification
TIA2 - Design / Modeling and Documentation for development
TIA3 - Implementation / Documentation / Delivery
TIA = TIA1*25% + TIA2*30.0% + TIA3*45%
Fórmula de cálculo da classificação final
A) Continuous evaluation :
-> 2 Tests in IDE (60%)
NT = (NT1 + NT2) / 2
-> 1 Mini-tests in IDE (20%)
NMT = (NMT1 + NMT2 + NMT3) / 3
-> 3 Quizz Assincronous and presential (10%)
Quizz [i] = 30% Qu. Assincronous + 70% Qu. Presencial
NQ = (Qu1+Qu2+Qu3)/3
-> 3 Colective work (10%)
NL = (LAB1 + LAB2+LAB3)/3
NFINAL= 60% NT + 20% NMT + 10%NQ + 10%
************************************************
B) Regular and Appeal Season Exam:
Students who do not obtain the frequency in continuous assessment will be evaluated through an exam and a mandatory Individual Autonomous Work with minimal grade > 8.
Final grade (NF) NF = Exam*70% + (NTIA * 30%) * DTIA)
NTIA - Self-Employed Individual Work Score
DTIA – Discussion of Autonomous Individual Work - coefficient between 0 and 1.
NTIA > 8.
Autonomous Individual Work (TIA) in 3 stages (TIA1, TIA2, TIA3)
TIA1 - Requirements analysis and specification
TIA2 - Design / Modeling and Documentation for development
TIA3 - Implementation / Documentation / Delivery
TIA = TIA1*25% + TIA2*30.0% + TIA3*45%
Provas e trabalhos especiais
2 tests throughout the semester
1 mini-tests throughout the semester
6 laboratories
3 questionnaires
11 Tutorials
For students who do not pass continuous assessment: Individual work that includes the development of a program and discussion of the work carried out.
Avaliação especial (TE, DA, ...)
If they opt for it, a final exam and individual work (see section Obtaining Frequency)Melhoria de classificação
By exam and individual work (see section Obtaining Frequency)