Diferència entre revisions de la pàgina «Programació web entorn servidor»
Línia 70: | Línia 70: | ||
* [[Laravel#Quickstart_per_a_fer_un_CRUD|Xuleta de referència ràpida per a projectes amb Laravel]] | * [[Laravel#Quickstart_per_a_fer_un_CRUD|Xuleta de referència ràpida per a projectes amb Laravel]] | ||
− | Una de les característiques més incòmodes dels frameworks és que tenen una certa "corba d'aprenentatge", és a dir, que al principi costa una mica ficar-se. Un cop superat el segon projecte, tot resulta més fàcil i comprensible, i ajuda a programar amb ordre i de forma estandarditzada. | + | Una de les característiques més incòmodes dels frameworks és que tenen una certa "corba d'aprenentatge", és a dir, que al principi costa una mica ficar-se. Un cop superat el segon projecte, tot resulta més fàcil i comprensible, i ajuda a programar amb ordre i de forma estandarditzada. |
− | Farem servir el tutorial de AJ Gallego per a endinsar-nos en el món de Laravel | + | Farem servir el tutorial de AJ Gallego per a endinsar-nos en el món de Laravel. Com que té la seva complicació i costa retenir cada pas que fem, dividirem el tutorial en diverses parts i repetirem el procediment realitzat en un altre projecte. Per senzillesa repetirem el projecte de la UF anterior però implementat ara amb el ''framework'', cosa que ens permetrà comparar el codi resultant dels dos projectes. |
+ | |||
+ | El tutorial és aquest: | ||
+ | https://ajgallego.gitbooks.io/laravel-5/content/index.html | ||
+ | Com que algunes parts han quedat obsoletes, utilitza la [[Laravel|documentació de cacauet.org sobre Laravel]] per solventar els problemes. | ||
+ | |||
+ | I les seves diverses parts son: | ||
+ | # Instal·lació de composer: [[Laravel#Instal.C2.B7lació_i_setup]] | ||
+ | # ... | ||
<br> | <br> |
Revisió del 14:56, 30 gen 2018
En aquesta assignatura treballarem bàsicament amb PHP, que actualment és el llenguatge més estès per a la programació web.
Recursos:
- Quadern d'exercicis del Daniel Herrera (molt agraït):
https://uf.ctrl-alt-d.net
- Al mateix cacauet.org també disposeu del Curs de PHP amb recursos varis.
Contingut
UF1 Programació web entorn servidor
Per configurar adequadament el Apache, reviseu Php.ini
Índex d'exercicis
Temes a tractar amb PHP:
- Execució servidor vs client
- Servidor web
- Tipus primitius de dades
- Arrays i arrays associatius (aka "diccionaris")
- Control de flux
- Funcions
- Objectes
- Arxius
- Formularis
- GET vs POST
- Cookies i PHP sessions
Exemples:
- Batalla naval en PHP (versions amb i sense sessions)
Exercicis entregables:
UF3 Accés a dades
En aquesta UF estudiarem diversos mètodes d'accés a bases de dades, imprescindibles per poder realitzar pàgines web dinàmiques.
Índex UF3 al quadern d'exercicis:
https://uf.ctrl-alt-d.net/material/mostra/308/tecniques-dacces-a-dades-metacontingut
Començarem, però, per alguns exemples clàssics:
- PHP MySQL select: accedirem a una base de dades de la manera més clàssica i menys eficient, amb instruccions específiques per a un SGBD concret (MySQL). Òbviament, això no és gaire òptim però està bé conèixer els mecanismes bàsics.
- PDO o PHP Data Objects
- Llegeix-te aquest exercici d'accés a dades amb PDO.
- Para atenció en com es fa el foreach enlloc del for habitual.
- Exercici: Utilitza la base de dades WORLD vista al primer tutorial.
- Fes un formulari amb un desplegable dels CONTINENTS.
- Llista els països amb un filtre per continent.
- Mostra la població de cada país i un total de tot el continent.
- Llegeix-te aquest exercici d'accés a dades amb PDO.
El projecte d'aquest any: Projecte VOTA!
UF2 Programació de webs dinàmiques
Prèviament hem après a programar ja en PHP i amb bases de dades, però hem aprés a programar de forma anàrquica, i hem vist en el transcurs dels projectes que tendim a fer "codi espagueti" i acabem repetint moltes parts del mateix de forma recorrent. En aquesta UF aprendrem a programar de forma més ordenada i aprendrem una sèrie d'eines imprescindibles per desenvolupar de forma segura i metòdica: els frameworks. En particular utilitzarem Laravel que és el framework per a PHP més famós actualment (a principis de 2018).
Introducció i referències:
- Desenvolupament d'aplicacions web amb frameworks una mica de teoria.
- Laravel: instal·lació i primeres passes
- Apunts del Sergi Coll: https://seicoll.github.io/DAW-M07-UF2-Apunts/
- Tutorial de referència: https://ajgallego.gitbooks.io/laravel-5/content/index.html
- Xuleta de referència ràpida per a projectes amb Laravel
Una de les característiques més incòmodes dels frameworks és que tenen una certa "corba d'aprenentatge", és a dir, que al principi costa una mica ficar-se. Un cop superat el segon projecte, tot resulta més fàcil i comprensible, i ajuda a programar amb ordre i de forma estandarditzada.
Farem servir el tutorial de AJ Gallego per a endinsar-nos en el món de Laravel. Com que té la seva complicació i costa retenir cada pas que fem, dividirem el tutorial en diverses parts i repetirem el procediment realitzat en un altre projecte. Per senzillesa repetirem el projecte de la UF anterior però implementat ara amb el framework, cosa que ens permetrà comparar el codi resultant dels dos projectes.
El tutorial és aquest:
https://ajgallego.gitbooks.io/laravel-5/content/index.html
Com que algunes parts han quedat obsoletes, utilitza la documentació de cacauet.org sobre Laravel per solventar els problemes.
I les seves diverses parts son:
- Instal·lació de composer: Laravel#Instal.C2.B7lació_i_setup
- ...
UF4 Serveis web
Els serveis web, simplificant, és una manera de realitzar crides a funcions remotes mitjançant el protocol HTTP. És la forma més còmoda per al programador web d'anar a buscar dades a un servidor, ja sigui des d'un altre servidor o des d'un client.
Al tractar-se, com hem dit, de "crides a funcions remotes", solem anomenar-los API : Application Programming Interface.
Articles de referència:
- Serveis Web
- Serveis web amb Laravel
- Pràctica entregable: Serveis Web amb Opendata
- Material addicional en Python: Web Services: exemple Escacs
- REST i CURL del tutorial de Laravel de AJ Gallego