IDENTIFYING DATA 2021_22
Subject (*) PROGRAMMING Code 17244010
Study programme
Bach. Degree in Telecommunication Systems and Services Engineering (2016)
Cycle 1st
Descriptors Credits Type Year Period
6 Basic Course Second 1Q
Language
Català
Department Computer Engineering and Mathematics
Coordinator
VALLS MATEU, AÏDA
E-mail aida.valls@urv.cat
david.sanchez@urv.cat
maria.ferre@urv.cat
neus.budesca@urv.cat
cristina.romero@urv.cat
Lecturers
VALLS MATEU, AÏDA
SÁNCHEZ RUENES, DAVID
FERRÉ BERGADÀ, MARIA
BUDESCA HERNANDO, NEUS
ROMERO TRIS, CRISTINA
Web http://moodle.urv.cat
General description and relevant information <p> The information published in this guide corresponds to face-to-face classes and can serve as a guide. Due to the health emergency caused by COVID-19 there may be changes in teaching, assessment and calendars for the academic year. These changes will be reported in the Moodle space of each subject.</p><p>GENERAL DESCRIPTION OF THE SUBJECT:This course is an introduction to Object-Oriented Programming. </p>

Competences
Type A Code Competences Specific
 FB2 Have basic knowledge on the use and programming of computers, operating systems, databases and IT programmes of application in engineering.
 RT7 Understand and use the basic principles of programming for telecommunication networks, systems and services.
Type B Code Competences Transversal
 CT4 Work autonomously and as part of a team with responsibility and initiative.
 CT5 Communicate information clearly and precisely to a variety of audiences.
Type C Code Competences Nuclear

Learning outcomes
Type A Code Learning outcomes
 FB2 Design an application using object-oriented programming
Implement linear data structures
 RT7 Implement an application based on the object oriented paradigm using Java
Implement a simple graphic interface
Describe an application using basic software engineering techniques
Type B Code Learning outcomes
 CT4 Work independently and as part of a team with responsibility and initiative.
Communicate and act within the group in such a way that they facilitate cohesion and performance
Commit to the group’s tasks and agenda
Participate in the group in a good working environment and help to solve problems
 CT5 Communicate information clearly and precisely to a variety of audiences.
Draw up texts that are structured, clear, cohesive, rich and of the appropriate length
Draw up texts that are appropriate to the communicative situation, consistent and persuasive
Type C Code Learning outcomes

Contents
Topic Sub-topic
1. Basics of Object-Oriented Programming (OOP): data organization in classes. 1.1 Classes, objects, methods and instances. Constructors.
1.2 Class modifiers (public, private, static, ...).
1.3 Composition in classes. Enumerates.
2. Object-Oriented Programming in detail: Inheritance and Polimorphism. 2.1 Inheritance: superclasses and subclasses. Protected.
2.2 Class hierarchy. The Object class.
2.3 Polimorphism.
2.4 Abstract classes and methods.
2.5 Final Classes and methods.
2.6 Interfaces.
3. Introduction to the design of applications using OOP. 3.1 Packages.
3.2 Exceptions.
3.3 Data flows: files.
3.4 Design of a graphical interface.
3.5 Introduction to UML.

Planning
Methodologies  ::  Tests
  Competences (*) Class hours
Hours outside the classroom
(**) Total hours
Introductory activities
2 0 2
Lecture
FB2
16 16 32
Problem solving, exercises
FB2
8 16 24
IT-based practicals in computer rooms
FB2
26 26 52
IT-based practicals
FB2
RT7
CT4
CT5
2 26 28
Personal attention
2 0 2
 
Short-answer objective tests
FB2
RT7
4 6 10
 
(*) On e-learning, hours of virtual attendance of the teacher.
(**) The information in the planning table is for guidance only and does not take into account the heterogeneity of the students.

Methodologies
Methodologies
  Description
Introductory activities Presentation of the lecturers and the organization of the course (topics, materials, competences, bibliography).
The evaluation procedure will be also explained at this introductory class.
Lecture Main lectures where the concepts are explained with examples.
Morning lectures are in Catalan, and afternoon lectures in English.
Problem solving, exercises Some weeks the students will practise solving short exercises, individually or in group.
The exercises may be given to students in advance so that you can prepare them at home before the class.
IT-based practicals in computer rooms Practice classes in computer laboratories. Each session a new exercise will be proposed, to be solved during the class using Java and Eclipse.
IT-based practicals The student must design and implement several exercises (which can be individual or in groups). Details will presented at class by the teacher. The work will be done at home.

Some additional documentation can be required, together with the source code in Java.
Personal attention Personal attention will be given at the teacher's office (143).
It is recommended to contact with the teachers by email in advance to agree with the date/time.

Personalized attention
Description
Personal attention will be given at the teacher's office (143). It is recommended to contact with the teachers by email in advance to agree with the date/time.

Assessment
Methodologies Competences Description Weight        
IT-based practicals
FB2
RT7
CT4
CT5
The student must design and implement in Java several exercises (which can be individual or in groups). Details will be given in the Moodle platform.
Some additional documentation can be required, together with the source code in Java.
The student must deliver all the exercises a minimum average grade of 5 is mandatory to pass the course.
40
Short-answer objective tests
FB2
RT7
There will be two exams during the course, covering all the topics explained until the date of the exam.
A minimum average grade of 5 is mandatory to pass the course and a minimum of 4 in the second exam.
60
Others  
 
Other comments and second exam session

If the student cannot pass the course in the first round, a second chance is available (see the calendar at ETSE website).

Only the part failed must be repeated (the practical part or the exams part):

  • The final exam at the second round will cover all the course (60%). Minimum grade of 5 to pass.
  • To pass the practical part in the second round a different final practical exercise must be done (40%).Minimum grade of 5 to pass.

During exams it is prohibited the use of any communication or data transmission device. If you do not follow this rule, the exam will be not reviewed and you will automatically get a Fail.


Sources of information

Basic Herbert Schildt, Java 8, última edició disponible,
Paul Deitel, Harvey Deitel, Java. Cómo programar., última edició disponible,
Jesús Sanchez Allende et al, Programación en Java, 3a, https://urv.on.worldcat.org/oclc/904669894

In addition to the books recommended in this section (in Spanish),
you can also use the following books in English, which are available at the Campus Sescelades library:

- Java: How to program. Paul Deitel, Harvey Deitel. Ed.Prentice Hall (004.43 JAVA Dei).

Sams teach yourself Java in 24 hours, Cadenhead, Rogers. Pearson Education [distributor], 2012

Complementary Rogers CadenHead, Programación Java 7, última edició disponible,
David Camacho, Jose M Valls, Jesus Garcia i altres, Programación, Algoritmos y ejercicios resueltos en JAVA, última edició disponible,

Recommendations

Subjects that continue the syllabus
INFRASTRUCTURES FOR BIG DATA/17244106


Subjects that it is recommended to have taken before
FUNDAMENTALS OF PROGRAMMING/17244001
(*)The teaching guide is the document in which the URV publishes the information about all its courses. It is a public document and cannot be modified. Only in exceptional cases can it be revised by the competent agent or duly revised so that it is in line with current legislation.