IDENTIFYING DATA 2015_16
Subject (*) PROGRAMMING Code 17224114
Study programme
Bachelor's Degree in Telematics engineering (2010)
Cycle 1st
Descriptors Credits Type Year Period
6 Compulsory Second 1Q
Language
Anglès
Català
Department Enginyeria Informàtica i Matemàtiques
Coordinator
VALLS MATEU, AÏDA
FERRÉ BERGADÀ, MARIA
E-mail aida.valls@urv.cat
david.sanchez@urv.cat
maria.ferre@urv.cat
Lecturers
VALLS MATEU, AÏDA
SÁNCHEZ RUENES, DAVID
FERRÉ BERGADÀ, MARIA
Web http://moodle.urv.cat
General description and relevant information This course is an introduction to Object-Oriented Programming. Lectures in the morning are given in Catalan, and the lectures in the afternoon are given in English.

Competences
Type A Code Competences Specific
 A4 Be able to analyse, use and develop technology within the field of telecommunications.
 FB2 Have basic knowledge on the use and programming of computers, operating systems, databases and IT programmes applicable to engineering.
 RT7 Have knowledge of and use the fundamentals of programming in telecommunications networks, systems and services.
 TEL4 Be able to describe, programme, validate and optimise communications protocols and interfaces in the different levels of a network architecture.
Type B Code Competences Transversal
 B2 Have knowledge in basic and technological subjects, which gives them the ability to learn new methods and theories, and the versatility to adapt to new situations.
 B3 Be able to solve problems with initiative, decisiveness, creativity, and to communicate and transmit knowledge, abilities and skills, understanding the ethical and professional responsibility of the activity of the Technical Telecommunications Engineer.
Type C Code Competences Nuclear
 C4 Be able to express themselves correctly both orally and in writing in one of the two official languages of the URV

Learning outcomes
Type A Code Learning outcomes
 A4 És capaç d’implementar una aplicació basada en el paradigma orientat a objectes usant el llenguatge Java.
Implementa estructures de dades lineals en memòria estàtica.
 FB2 És capaç d’implementar una aplicació basada en el paradigma orientat a objectes usant el llenguatge Java.
Dissenya una interfície gràfica senzilla, i implementa usant les eines SWING proporcionades pel llenguatge Java.
 RT7 És capaç d’implementar una aplicació basada en el paradigma orientat a objectes usant el llenguatge Java.
 TEL4 Dissenya aplicacions orientades a objectes i representa usant el llenguatge UML.
Type B Code Learning outcomes
 B2 Coneix els conceptes bàsics de programació orientada a objectes.
Implementa estructures de dades lineals en memòria estàtica.
 B3 Dissenya aplicacions orientades a objectes i representa usant el llenguatge UML.
Type C Code Learning outcomes
 C4 Produce grammatically correct written texts
Produce well-structured, clear and rich written texts

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
FB2
2 0 2
Lecture
A4
FB2
B2
16 16 32
Problem solving, exercises
A4
B3
8 16 24
Practicals using information and communication technologies (ICTs) in computer rooms
A4
B3
26 26 52
ICT practicals
A4
RT7
TEL4
B3
C4
2 26 28
Personal tuition
2 0 2
 
Objective short-answer tests
A4
FB2
B2
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.
Practicals using information and communication technologies (ICTs) 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.
ICT practicals 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, and the problem will be also presented at class by the teacher.

Some additional documentation can be required, together with the source code in Java.
Personal tuition 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        
ICT practicals
A4
RT7
TEL4
B3
C4
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.
A minimum average grade of 5 is mandatory to pass the course.
40
Objective short-answer tests
A4
FB2
B2
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.
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%)
  • To pass the practical part in the second round a different final practical exercise must be done (40%).
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 7, última edició,
Paul Deitel, Harvey Deitel, Java. Cómo programar, última edició disponible,

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 J.Cohoon, J. Davidson , Programación en Java 5.0, última edició disponible,
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 it is recommended to have taken before
THE FUNDAMENTALS OF PROGRAMMING/17224001
(*)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.