Guía Docente 2023-24 PROGRAMACIÓN AVANZADA PARA INTERNET (VIDEOJUEGOS) |
BASIC DETAILS:
Subject: | PROGRAMACIÓN AVANZADA PARA INTERNET (VIDEOJUEGOS) | ||
Id.: | 31836 | ||
Programme: | DOBLE GRADO EN INGENIERÍA INFORMÁTICA Y DISEÑO Y DESARROLLO DE VIDEOJUEGOS | ||
Module: | INFORMÁTICA | ||
Subject type: | OPTATIVA | ||
Year: | 4 | Teaching period: | Primer Cuatrimestre |
Credits: | 6 | Total hours: | 150 |
Classroom activities: | 62 | Individual study: | 88 |
Main teaching language: | Inglés | Secondary teaching language: | Castellano |
Lecturer: | Email: |
PRESENTATION:
In the past, the web was created by web developers. Nowadays, web development has evolved together with the technologies and frameworks available for that duty. This leads to a new classification scheme for web developers, ranging from front-end developers, back-end developers or even full-stack developers.
The main objective of this subject is to form you as a back-end developer. During the course you will get advanced knowledge of programming on the Internet: architecture, communications, technologies, and tools to apply for a secure and robust web application.
The main technologies used during the course will be PHP, MySQL, Apache Web Server, HTML5, CSS3 and Javascript. Foundations will be laid out and then used to build three web applications (the main assignments) with increasing difficulty.
The workload of the course can be classified as:
Coding: 9/ 10
Theory: 5/ 10
Arts: 2/ 10
PROFESSIONAL COMPETENCES ACQUIRED IN THE SUBJECT:
General programme competences | G01 | Ability to use learning strategies independently for use in the continuous improvement of professional practice. |
G02 | Ability to analyse and synthesise problems of their professional activity and apply in similar environments. | |
G03 | Ability to achieve common results through teamwork in a context of integration, cooperation and encouraging critical discussion. | |
G04 | Ability to critically think about information, data and lines of action and their implementation in relevant social, scientific ethical issues. | |
G05 | Ability to communicate in Spanish and English for professional issues in oral and written form. | |
G06 | Ability to solve complex problems or contingencies that arise during professional activity within any organisation and adapt to the needs and demands of their professional environment. | |
G07 | Ability to handle different complex knowledge models through a process of abstraction and its application to approach and solve problems. | |
G08 | Ability to understand the role of the scientific method in the generation of knowledge and its application to a professional environment. | |
G09 | Ability to work with respect for the environment and society through the proper use of technology and its application in promoting a sustainable economy and environment. | |
G10 | Ability to master information and communication technologies and their application in their professional field. | |
Specific programme competences | E01 | Ability to solve mathematical problems inherent to engineering. Ability to apply knowledge about: algebra; geometry; differential and integral calculus; optimisation and numerical methods |
E02 | Ability to understand and master the concepts of the general laws of classical mechanics, fields, waves and electromagnetism and their application for solving video game development problems. | |
E03 | Ability to develop the use and programming of computers, operating systems, databases and software and their application in the development of video games. | |
E04 | Ability to understand and master the basic concepts of discrete logic, algorithmic mathematical and computational complexity, and their application for solving engineering problems. | |
E05 | Ability to program applications both correctly, and efficiently, choosing the most appropriate paradigm and programming languages, applying knowledge of basic algorithmic procedures and using the types and structures of the most appropriate data. | |
E06 | Ability to learn, understand and evaluate the structure and architecture of computers, as well as their basic components. | |
E07 | Ability to design, analyse and implement applications based on the characteristics of the database. | |
E08 | Ability to learn and master the features, functionality and structure of the Distributed Systems, Computer Networks and the Internet and design and implement applications based on them. | |
E09 | Ability to learn and master the tools necessary for the storage, processing and access to information systems, including web-based. | |
E10 | Ability to be familiar with the characteristics, functions and structure of operating systems. | |
E11 | Ability to develop online games for multiple players. | |
E12 | Ability to understand and analyse the structure, organisation, function and interconnection of the devices and systems in video game platforms. | |
E13 | Ability to discover, design and assess the main foundations and techniques of player-computer interaction that guarantee the accessibility and userability of the systems, services and IT applications including video games. | |
E14 | Ability to apply the main foundations and techniques of the smart systems and their practical application in diverse environments. | |
E15 | Ability to apply the main foundations and techniques of programming in real time. | |
E16 | Ability to fully manage and plan software projects and handle suitable tools to do so. | |
E17 | Ability to understand and analyse the structure and function of the main hardware systems and peripherals in video game platforms. | |
E18 | Ability to understand and apply the principles of ergonomics and "Design for all" in order to develop universally accessible interfaces and devices in the field of video games. | |
E19 | Ability to recognise and apply the principles, methodologies and life cycle of software engineering. | |
E20 | Ability to generate and analyse expressive and narrative resources and their application to video games. | |
E21 | Ability to execute the art of video games, create characters and settings. | |
E22 | Ability to manage techniques and tools used for artistic representation and expression. | |
E23 | Ability to use creative processes in the design and development of video games. | |
E24 | Ability to specially visualise and have knowledge of the graphical representation techniques, both in terms of traditional methods of metrical geometrics and descriptive geometrics using computer-assisted design application. | |
E25 | Ability to design and create graphical elements and their application in the development of video games. | |
E26 | Ability to perform the design and creation of animated characters and their application in the development of video games. | |
E27 | Ability to apply the methods in the creation and preservation of synthetic images | |
E28 | Ability to perform the design and construction of models with the information necessary for the creation and display interactive images. | |
E29 | Ability to understand and apply the techniques of visualisation, animation, simulation and interaction on models | |
E30 | Ability to design, develop, select and evaluate applications and systems, ensuring reliability, safety and quality, according to ethical principles and legislation and regulations. | |
E31 | Ability to perform the evaluation of video games from their different approaches. | |
E32 | Ability to evaluate, use and spread game engines. | |
E33 | Ability to develop production developments in the field of video games. | |
E34 | Ability to create and analyse games on their fundamentals and develop the understanding of what are the keys that determine how they work and their development. | |
E35 | Ability to know and understand the video game industry from a business point of view | |
E36 | Ability to identify and implement legal and ethical aspects of the gaming industry | |
E37 | Ability to design and create sounds and sound environments and their application in game development | |
E38 | Ability to produce an original project that integrates the skills acquired throughout the degree along with its presentation and defence before a university tribunal that relates to the field of design and game development. |
PRE-REQUISITES:
It is recommended to have basic knowledge of HTML, CSS, Javascript and some experience with programming and web environments.
SUBJECT PROGRAMME:
Subject contents:
1 - Introduction |
1.1 - Dynamic Webs |
2 - Server-side Programming |
2.1 - Hello PHP |
2.2 - PHP Functions and Arrays |
2.3 - PHP Objects |
2.4 - PHP File Handling |
2.5 - Individual Assignment I: Generating our individual portfolio |
3 - CRUD in the Web |
3.1 - Hello MySQL |
3.2 - MySQL meets PHP |
3.3 - PHP Security |
3.4 - Individual Assignemnt II: Develop my own E-commerce |
4 - Metasearch Engines |
4.1 - JSON and AJAX |
4.2 - REST APIs |
4.3 - Group Assignment I: Metasearch platform |
Subject planning could be modified due unforeseen circumstances (group performance, availability of resources, changes to academic calendar etc.) and should not, therefore, be considered to be definitive.
TEACHING AND LEARNING METHODOLOGIES AND ACTIVITIES:
Teaching and learning methodologies and activities applied:
Theoretical practical sessions:
First, the lecturer will present the theoretical contents of the subject as a master class, supported by the necessary resources (blackboard, slides, and live demos ...) to exemplify and illustrate the contents properly. The participation of students asking questions, theoretical situations or promoting group discussion on the topics discussed will be encouraged.
Then, the theoretical sessions will be supported by the approach and resolution of practical exercises. These exercises will be solved by the students, individually or collectively, depending on the type of problem to solve. As part of this practical session, students will present their proposed solutions.
Participation:
Participation of the students will be required during the theoretical-practical sessions. The participation will be computed and taken into account for the final marks. In addition, each unit will include some exercises that students should complete for their individual portfolios. The solution of the exercises will be shown and explained by the students, computing for the final grade.
Individual assignments:
Part of the learning and the grade acquired through the course comes from the resolution of the two individual assignments proposed along the course. In particular, for each of the lectures a short assignment will be requested. Those assignments must be delivered through the PDU within the deadline.
In order to resolve the exercises, student will receive some technical guidance. In addition, a communication mechanism will be provided (PDU) to discuss and comment on the different problems that arise during the resolution of the assignments.
The resolution of these individual assignments prepares the student to acquire the professional competences of this course.
Group assignments:
In addition to the individual assignments, students will develop a group assignment that will put in practice all the topics covered by the course. This assignment will be followed by the teacher before the final presentation, to ensure the quality and guide the students when needed.
As with the individual assignments, there will be technical guidance and a communication mechanism to discuss about the assignments.
Presentation of the assignments:
An important part of the learning process for the student is the presentation of their assignments to the rest of the students. During these presentations, students will have the opportunity to highlight the most positive aspects of their work, present the solutions to address the issues and even discuss other ways of solving the problems explored by the student.
Mentoring:
Students will attend tutorials to ask the teacher questions and problems that arise during the course and that have not been properly addressed during the sessions. Also during these tutorials, the teacher will provide supervision and guidance to help students acquire the skills raised by the course.
As during tutorials with the teacher, students can use the media available on the PDU to raise concerns or judgments about the course at any time, to receive help and feedback from other students and from the teacher.
The tutorials will be held on Mondays from 16:00 to 18:00 and on Thursdays from 15:00 to 17:00. If unable to attend tutoring during these times, they may be arranged at convenient times tutoring for students and the teacher.
Student work load:
Teaching mode | Teaching methods | Estimated hours |
Classroom activities | ||
Master classes | 20 | |
Practical exercises | 8 | |
Practical work, exercises, problem-solving etc. | 14 | |
Laboratory practice | 10 | |
Assessment activities | 10 | |
Individual study | ||
Tutorials | 4 | |
Individual study | 20 | |
Individual coursework preparation | 38 | |
Group cousework preparation | 11 | |
Research work | 10 | |
Recommended reading | 5 | |
Total hours: | 150 |
ASSESSMENT SCHEME:
Calculation of final mark:
Written tests: | 45 | % |
Individual coursework: | 30 | % |
Group coursework: | 5 | % |
Final exam: | 10 | % |
Participation: | 10 | % |
TOTAL | 100 | % |
*Las observaciones específicas sobre el sistema de evaluación serán comunicadas por escrito a los alumnos al inicio de la materia.
BIBLIOGRAPHY AND DOCUMENTATION:
Basic bibliography:
NIXON, Robin. Learning PHP, MySQL, JavaScript, CSS & HTML5 3rd Edition (O'Reilly 2014, ISBN 978-1491949467) |
Recommended bibliography:
CASTRO, Elizabeth. HTML, XHTML y CSS. Madrid : Anaya Multimedia, 2007 |
DAVIS, Michele E. and PHILLIPS, Jon A. PHP y MySQL. Madrid : Anaya, 2008. |
OLIVELLA, Ramón. Diseño y programación de aplicaciones web. Barcelona : Inforbook´s, D.L. 2002. |
Recommended websites:
W3Schools Online Web Tutorials | http://www.w3schools.com |
XAMPP. Apache distribution | https://www.apachefriends.org/index.html |
PHP Official Documentation | http://www.php.net/ |
* Guía Docente sujeta a modificaciones