Desenv. back-end PHP Codi:  M4.255    Crèdits:  6
Consulta de les dades generals   Descripció   L'assignatura en el conjunt del pla d'estudis   Coneixements previs   Objectius i competències   Continguts   Consulta dels recursos d'aprenentatge de què disposa l'assignatura   Recursos d'aprenentatge i eines de suport   Bibliografia i fonts d'informació   Consulta del model d'avaluació  
ATENCIÓ: Aquesta informació recull els apartats del pla docent de l'assignatura durant el darrer semestre amb docència. En iniciar el període de matrícula, podràs consultar el calendari i model d'avaluació per al següent semestre a Tràmits / Matrícula / Horaris de les proves d'avaluació final.

Una part essencial del què succeeix en una aplicació web és el que passa al servidor web. Habitualment això inclou la "lògica de negoci" de l'aplicació i, amb força freqüència, el treball amb una o més bases de dades. Això s'acostuma a conèixer com "back end" de l'aplicació, per oposició al "front end", que fa referència al què passa al navegador de l'usuari (o qualsevol altra combinació de hardware i software, en el cas de les aplicacions per a dispositius mòbils, per exemple).

En aquesta assignatura veurem els fonaments d'aquest treball en el servidor. Per tal de fer-ho, d'entre les moltes solucions existents, en veurem tres, totes elles basades en la plataforma AMP (Apache, MySQL, PHP). Ordenades de més a menys simplicitat (i, en conseqüència, de menys a més potència), es tracta dels gestors de continguts WordPress i Drupal, usats com si fossin frameworks d'aplicacions, i dels frameworks pròpiament dits CodeIgniter i Symfony.

Aprendrem a seleccionar la millor solució per al desenvolupament de cada aplicació en funció dels diferents condicionants que tinguem i a desenvolupar l'aplicació.

Treballarem tant servint pàgines estàtiques al client com pensant en la possibilitat de desenvolupar aplicacions headless, que s'encarreguen únicament de la lògica de negoci i estan pensades per tal que la part front-end es desenvolupi en paral·lel, en HTML, CSS i JavaScript si volem un client web o amb la tecnologia més convenient si es tracta de clients mòbils "nadius", per exemple. Aquestes tecnologies front-end no es veuran en aquesta assignatura.

Amunt

Dins el programa de màster en Desenvolupament de Llocs i Aplicacions Web aquesta assignatura s'ocupa del desenvolupament del costat servidor. Il·lustra, a més, per a tots aquells estudiants que vulguin centrar-se en el desenvolupament en el costat del client, quin és el funcionament i les peculiaritats de les aplicacions en el costat del servidor a què hauran d'accedir.

Amunt

Són molt convenients tant coneixements sòlids d'HTML i CSS com algun tipus d'experiència en programació, encara que no cal que s'hagi treballat en PHP.

Amunt

Resultats d'aprenentatge:

  • Recollir els requeriments funcionals d'un lloc o aplicació web complexos
  • Analitzar els millors frameworks de desenvolupament a utilitzar per a la programació d'un lloc o aplicació web en funció de les necessitats i els recursos disponibles i proposar un conjunt de tecnologies a utilitzar
  • Programar aplicacions en el costat del servidor utilitzant el llenguatge de programació PHP i bases de dades relacionals
  • Documentar i explicar el procés de creació d'un lloc web de forma clara i llegible tant per a clients com per a col·laboradors

Competències bàsiques i generals:

  • Que els estudiants sàpiguen aplicar els coneixements adquirits i la seva capacitat de resolució de problemes en entorns nous o poc coneguts dins de contextos més amplis (o multidisciplinaris) relacionats amb la seva àrea d'estudi;
  • Que els estudiants siguin capaços d'integrar coneixements i enfrontar-se a la complexitat de formular judicis a partir d'una informació que, sent incompleta o limitada, inclogui reflexions sobre les responsabilitats socials i ètiques vinculades a l'aplicació dels seus coneixements i judicis;
  • Que els estudiants tinguin les habilitats d'aprenentatge que els permetin continuar estudiant d'una manera que haurà de ser en gran manera autodirigida o autònoma.
  • Analitzar i sintetitzar informació tècnica complexa.
  • Resoldre problemes, identificant, analitzant i definint els elements significatius.
  • Adaptar-se a noves situacions i entorns.
  • Aprendre i actualitzar-se permanentment.

Competències transversals:

  • Innovar i generar idees noves i portar-les a la pràctica.
  • Ús i aplicació crítics de les TIC en l'àmbit acadèmic i professional.

Competències específiques:

  • Seleccionar i implementar solucions tecnològiques de manera efectiva i eficient tenint en compte els recursos, les alternatives disponibles i les condicions de mercat.
  • Utilitzar de manera adequada els llenguatges de programació i les millors eines de desenvolupament per a l'anàlisi, el disseny i la implementació de llocs i aplicacions web en funció de les necessitats del projecte.
  • Construir llocs web usables i accessibles des de qualsevol tipus de dispositiu utilitzant els millors solucions ofertes pels llenguatges de marcat.
  • Aplicar de la manera més adequada els patrons d'arquitectura de programari més convenients per a cada problema.
  • Seleccionar i utilitzar de manera efectiva els frameworks més adequats per al desenvolupament d'aplicacions tant en el costat del navegador com en el del servidor.
  • Adaptar-se a les tecnologies web i als futurs entorns actualitzant les competències professionals.

Amunt

  1. Sistemes de gestió de continguts
    Definició de CMS. Frameworks vs CMS. Ús dels CMS. Components del servidor necessaris per a instal·lar CMS. Característiques d'un bon CMS. Altres característiques dels CMS. Tipus de CMS
  2. El WordPress
    Introducció. Instal·lació. L'escriptori de WordPress. Configuració i seguretat. Introducció als temes. Shortcodes. Plug-ins
  3. El Drupal
    Introducció. Instal·lació. Panell d'administració. Mòduls. Drupal vs WordPress. Integració amb xarxes socials. Themes
  4. Frameworks PHP. Laravel
    Instal·lació. Configuració. Conceptes d'arquitectura. Fonaments. Frontend. Seguretat. Bases de dades.

Amunt

Amunt

  • bin Uzayr, Sufyan. Learning WordPress REST API. Packt Publishing, 2016
  • Burrows, Alex. Drupal 8 Blueprints. Packt Publishing, 2017
  • Caya, Andrew. Mastering The Faster Web with PHP, MySQL, and JavaScript, Packt Publishing, 2018
  • Chumley, Chaz. Drupal 8 Theming with Twig. Packt Publishing, 2016
  • Dockins, Kelt. Design Patterns in PHP and Laravel. Apress, 2016
  • Glaman, Matt. Drupal 8 Development Cookbook - Second Edition. Packt Publishing, 2017
  • Gray, Markus; Carr, David. Beginning PHP. Packt Publishing, 2018
  • Hodgon, Jennifer. Programmer's Guide to Drupal, 2nd Edition. O'Reilly Media, 2015
  • Hurley, William; Chumley, Chaz. Mastering Drupal 8. Packt Publishing, 2017
  • Jones, Richard; Abbot, Nick. Learning Drupal 8. Packt Publishing, 2016
  • Król, Karol. WordPress Complete - Sixth Edition. Packt Publishing, 2017
  • Lefebvre, Yannick. WordPress Plugin Development Cookbook - Second Edition. Packt Publishing, 2017
  • Madel, Kurt; Tewari, Malabya et al. Drupal 8 Development Beginner's Guide - Second Edition. Packt Publishing, 2016
  • Mann, Eric. Security Principles for PHP Applications. php[architect], 2017
  • Nixon, Robin. Learning PHP, MySQL & JavaScript, 5th Edition. O'Reilly Media, 2018
  • Salehi, Sohail. Mastering Symfony. Packt Publishing, 2016
  • Stauffer, Matt. Laravel: Up and Running. O'Reilly Media, 2016
  • Waheed-ud-din Ahmad, Haafiz. Building RESTful Web Services with PHP 7. Packt Publishing, 2017

Amunt

Aquesta assignatura només es pot superar a partir de l'avaluació contínua (AC). La nota final d'avaluació contínua esdevé la nota final de l'assignatura. La fórmula d'acreditació de l'assignatura és la següent: AC.


Ponderació de les qualificacions

Opció per superar l'assignatura: AC

Nota final d'assignatura: AC

Amunt