General information


Subject type: Mandatory

Coordinator: Jorge Oter Gonzalez

Trimester: Second term

Credits: 4

Teaching staff: 

Jorge Oter Gonzalez

Teaching languages


  • Catalan

Skills


Specific skills
  • E1_Design and program the graphical interfaces of static or dynamic web portals, interactive applications and video games, following usability and accessibility criteria

  • E4_Design, plan, edit, program and market interactive multimedia applications

Description


The subject "Fundamentals of Programming" is part of the Multimedia area of ​​the Degree in Audiovisual Media. This course introduces students to learning a programming language that will allow them to write multimedia web applications with increased user interaction.

This subject is the natural continuation of the previous "Multimedia Systems" taken in the first term.

The programming language used is javascript and in particular the P5.js library with the aim of facilitating the writing of programs. You see the basics of programming to be able to make small calculations, read and save information provided by the user and create transitions and animations with the objects of the graphical user interface. Programming is worked on in response to events caused by the user with the keyboard and mouse.

The various concepts worked on in the subject are designed to train students in learning and using the basic concepts of programming.

 

Contents


UNIT 1.- ALGORITHM AND PROGRAMMING. WORK TOOL

This teaching block has a dual purpose, on the one hand the familiarization of the student with the work tool that will be used for the production of interactive applications and on the other the introduction of basic concepts towards algorithms and the programming.

This content works on:

1. Introduction to algorithms and programming

2. What is JavaScript? Bookshop p5.js

3. Work tool: Programming environment

4. Programming Process. Interpreted languages ​​versus compiled languages

5. Structure of a program

    5.1 The setup () function

    5.2. The draw () function. Animations

 

SUBJECT 2.- PROGRAMMING WITH P5JS. INTERACTIVITY 

This teaching block aims to write programs with P5.js that allow you to include graphics, animations and interactivity.

This content works on:

1. Concept of variable. Environment variables

2. Mouse interaction

3. Keyboard interaction

4. Event concept. Event functions

5. Basic drawing tools

 

SUBJECT 3.- BASIC PROGRAMMING

This teaching block aims to write programs with animation and / or interactivity achieved using a basic programming.

This content works on:


1. Data types: numbers, strings, and booleans

2. Data values
  2.1. Variables: creation, access and modification
  2.2. Constants and literals: creation and access
  2.3. Data scope: local and global

3. Expressions and operators
  3.1. Arithmetic, logical and relational operators
  3.2. Expression evaluation. Order of operations

4. Data inputs and outputs

5. Execution control structures
  5.1. Sequential structure.
  5.2. Conditional structure
  5.3. Iterative structure

 

SUBJECT 4.- ADVANCED PROGRAMMING

This teaching block aims to write programs with animation and / or interactivity achieved using the most advanced programming structures.

This content works on:

1. Functional decomposition
  1.1. Avoid code repetition
  1.2. Procedures: actions and functions

2. Parameterization
  2.1. Pass parameters
  2.2. Return values

 

 

Evaluation system


The final grade is the weighted sum of the grades for the following activities:

WEIGHT ACTIVITY

WRITTEN TEST AND 20%

WRITTEN TEST II 50%

PRACTICE INDIVIDUAL EXERCISES 5%

PRACTICE: INTERACTIVE GAME PART 1 8%

PRACTICE; INTERACTIVE GAME PART 2 17%

With the above weightings, laboratory activities (exercises and practicals) have a weight of 30% and theoretical activities have a weight of 70%.

Considerations:

To pass the subject, it is essential that the student has a minimum rating of 4 in the individual exercises of the sessions, and also in each of the parts of the interactive game given in the practice part.

If the final mark of the WRITTEN TEST II is not higher than 4 the subject is suspended with the qualification of this activity.

Retrieval only allows retrieving the grade of the theoretical activities: WRITTEN TEST I and II. If the grade of the make-up exam is 4 or higher and the weighting with the practice grade equals or exceeds 5, the subject is approved with a grade of 5.

REFERENCES


Basic

Montse Rabassa, Lina Juan. Transparencies and class exercises. Internal publication of the ESUPT

Lauren McCarthy, Casey Reas, Ben Fry. Introduction to p5.js. Marker Media. ISBN: 973-099881309

P5js Reference Guide. https://p5js.org/es/reference/

Complementary

JavaScript Guide. MDN. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide

Mario Rubiales Gómez. Wev Development Course: HTML, CSS and Javascript. Grupo Anaya General Publications, 2018. ISBN-10: 8441539391

 

HTML, CSS and JavaScript APIs in w3Schools. https://www.w3school.com