Menú local
Syllabus 2014-15 - 13311010 - Object-oriented programming (Programación orientada a objetos)
- Level 1: Tutorial support sessions, materials and exams in this language
- Level 2: Tutorial support sessions, materials, exams and seminars in this language
- Level 3: Tutorial support sessions, materials, exams, seminars and regular lectures in this language
DEGREE: | Grado en Ingeniería informática |
FACULTY: | SCHOOL OF ENGINEERING OF JAÉN |
ACADEMIC YEAR: | 2014-15 |
COURSE: | Object-oriented programming |
NAME: Object-oriented programming | |||||
CODE: 13311010 | ACADEMIC YEAR: 2014-15 | ||||
LANGUAGE: English | LEVEL: 3 | ||||
ECTS CREDITS: 6.0 | YEAR: 1 | SEMESTER: SC |
NAME: GARCÍA FERNÁNDEZ, ÁNGEL LUIS | ||
DEPARTMENT: U118 - INFORMÁTICA | ||
FIELD OF STUDY: 570 - LENGUAJES Y SISTEMAS INFORMÁTICOS | ||
OFFICE NO.: A3 - 242 | E-MAIL: algarcia@ujaen.es | P: 953212922 |
WEBSITE: https://algarcia-ujaen.github.io | ||
ORCID: https://orcid.org/0000-0002-8183-7130 | ||
LANGUAGE: English | LEVEL: 3 | |
NAME: BALSAS ALMAGRO, JOSÉ RAMÓN | ||
DEPARTMENT: U118 - INFORMÁTICA | ||
FIELD OF STUDY: 570 - LENGUAJES Y SISTEMAS INFORMÁTICOS | ||
OFFICE NO.: A3 - 119 | E-MAIL: jrbalsas@ujaen.es | P: 953212881 |
WEBSITE: https://www4.ujaen.es/~jrbalsas/ | ||
ORCID: https://orcid.org/0000-0003-2689-0737 | ||
LANGUAGE: English | LEVEL: 1 | |
NAME: RIVAS SANTOS, VICTOR MANUEL | ||
DEPARTMENT: U118 - INFORMÁTICA | ||
FIELD OF STUDY: 570 - LENGUAJES Y SISTEMAS INFORMÁTICOS | ||
OFFICE NO.: A3 - 121 | E-MAIL: vrivas@ujaen.es | P: 953212344 |
WEBSITE: http://vrivas.es | ||
ORCID: https://orcid.org/0000-0002-0681-7172 | ||
LANGUAGE: English | LEVEL: 1 |
Observations:
Group A, PATIE 1, Prof. José Ramón Balsas Almagro
Group B, PATIE 1, Prof. Víctor Manuel Rivas Santos
Group C (english language), PATIE 3, Prof. Angel Luís García Fernández
Module
1. Introduction
Software features
Abstraction: Mechanisms and types
Procedure specification
Module abstraction
Abstraction using ADT
Abstraction using object classes
Module
2. Basic concepts and UML notation
Object-oriented programming features
Object-oriented programming specific concepts
Attribute and method visibility
Method types
Creating automatic and dynamic objects
Constructors and destructors
Operator overloading
UML notation for class representation
Module
3. Class relationships
Dependency relationships
Association relationships. Implementation
Aggregation and composition. Implementation
Generalization/specialization relationships
UML notation to represent class relationships
Inheritance and visibility
Copy and assignment of objects from subclasses
Module
4. Polymorphism
Syntactic polymorphism
Object polymorphism
Multiple inheritance, duplicated inheritance, virtual
inheritance
Method polymorphism
Dynamic and static linking
Virtual destructors
Abstract classes and interfaces
RTTI
Module
5. Templates and exception handling
Generic programming
Creating and using function and class templates
Introduction to STL
Basic STL templates: vector<T>
Error management through exception handling
Declaring and using exceptions
Catching exceptions
UML notation to represent exceptions and
templates
Lectures
There
will be two one-hour-long theory sessions each week during all
the
semester.
These sessions will be devoted to regular lectures and
problem
solving,
using a video projector and computer-generated slides. The
students
will
be encouraged to take part in these sessions through questions
and
allowing
them to play an active role. Regarding the problem solving
sessions,
there
will be one or at the end of each module, and during these
sessions, some
problems
from the lists available will be collectively solved, and the
teacher
will
try to answer all the student questions about them. The students
will have
access
to the same theory slides and the same problem lists that the
teacher
will
use in each module, so that they can review them prior to each
session,
making
active use of the references.
Practice sessions
Practice
sessions will be two hours long, and will be held weekly during
the
semester.
The practice script for each session will be available beforehand,
so
that
the students can work on the exercises on on their own before the
session.
The
students can use several ways to get in touch with the teacher and
ask
questions
before the practice session: tutorial hours, course forum or
e-mail.
During
the practice session, the teacher will give a short lecture about
the
main
concepts in the script, and will solve questions from the students.
Then,
the
students will work with the computers to implement the practice
exercises
from
the script under the teacher guidance.
Group
seminars
There
will be several group seminars during the semester. These seminars
will
be
one our long, and will be held on a regular basis (typically, at
the end of
each
module). In these seminars, the students will have to solve
practical
exercises
by working in groups of three or four persons, and applying
the
theoretical
concepts explained in normal lectures. The teachers will help
the
groups
by solving any question they ask. At the end of the seminar, the
teacher
will
pick up each group's work, and will mark them; these marks will
included
in
the final marks of the students. The seminar dates will be
published in the
official
schedule at the beginning of the semester.
Students with special educational needs should contact the Student Attention Service (Servicio de Atención y Ayudas al Estudiante) in order to receive the appropriate academic support
The students will have to pass the theoretical part of the course. At least one of the practical test will have to be taken by the students in order to be evaluated.
If a student fails, the marks
from their practical tests will be saved for the remedial exam.
Optionally, the student can retake the second practical test.
The mark system will conform the decree RD 1125/2003 (september 5th) about the European Credit System and the mark system for official university courses
- Object-oriented programming in C++ [Recurso electrónico]. Edition: 4th ed.. Author: Lafore, Robert (Robert W.). Publisher: Indianapolis, Ind. : Sams Pub., c2002. (Library)
- The object-oriented thought process [Recurso electrónico]. Edition: 2nd ed.. Author: Weisfeld, Matt A.. Publisher: Indianapolis, Ind. : Sams Pub., c2004. (Library)
- Object-orientated programming using C ++ and Java [Recurso electrónico] . Edition: -. Author: Vasappanavara, Ramesh. Publisher: New Delhi : Dorling Kindersley, 2011 (Library)