IDENTIFYING DATA 2020_21
Subject (*) PROGRAMMING Code 17264114
Study programme
Bac. Degree in Techniques for Developing Web and Mobiles Applications(2018)
Cycle 1st
Descriptors Credits Type Year Period
6 Compulsory Second 1Q
Language
Català
Department Computer Engineering and Mathematics
Coordinator
VALLS MATEU, AÏDA
E-mail aida.valls@urv.cat
maria.ferre@urv.cat
neus.budesca@urv.cat
cristina.romero@urv.cat
Lecturers
VALLS MATEU, AÏDA
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 2020-21 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
 INF3 Have knowledge of use of the basics of programming in distributed systems, computer networks and the internet.
 INF4 Be able to analyse, design, build and maintain applications that are robust, secure and efficient, choosing the most suitable paradigm and programming languages.
 INF9 Be able to design and evaluate human-computer interfaces that guarantee the accessibility and usability of the IT systems, services and applications.
Type B Code Competences Transversal
 CT4 Work independently 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
 INF3 Coneix els conceptes bàsics de programació orientada a objectes
 INF4 Desenvolupa aplicacions orientades a objectes
Be able to implement an application based on the object oriented paradigm using Java.
 INF9 Desenvolupa una interfície gràfica senzilla utilitzant les eines SWING proporcionades pel llenguatge Java
Type B Code Learning outcomes
 CT4 Identify the role they play in the group and understand the group’s objectives and tasks
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 Produce quality texts that have no grammatical or spelling errors, are properly structured and make appropriate and consistent use of formal and bibliographic conventions
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.
1.4 Introduction to the basic data structures.
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
INF3
INF4
INF9
16 16 32
Problem solving, exercises
INF3
INF4
8 16 24
IT-based practicals in computer rooms
INF3
INF4
INF9
26 26 52
IT-based practicals
INF3
INF4
INF9
CT4
2 26 28
Personal attention
2 0 2
 
Extended-answer tests
INF3
INF4
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
INF3
INF4
INF9
CT4
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 and a minimum average grade of 5 is mandatory to pass the course.
40
Extended-answer tests
INF3
INF4
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
DATA STRUCTURES/17264115


Subjects that it is recommended to have taken before
FUNDAMENTALS OF PROGRAMMING I/17264001
THE FUNDAMENTALS OF PROGRAMMING II/17264102
(*)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.