Programació: Diferència entre les revisions

De Cacauet Wiki
Dreceres ràpides: navegació, cerca
(Exercicis)
(afegir etiquetes #fpinfor)
 
(Hi ha 6 revisions intermèdies del mateix usuari que no es mostren)
Línia 1: Línia 1:
 +
<nowiki>#FpInfor #AsixMp03 #DawMp03 #DamMp03
 +
#AsixMp03Uf01 #AsixMp03Uf02 #AsixMp03Uf03
 +
#DawMp03Uf01 #DawMp03Uf02 #DawMp03Uf03 #DawMp03Uf04 #DawMp03Uf05 #DawMp03Uf06
 +
#DamMp03Uf01 #DamMp03Uf02 #DamMp03Uf03 #DamMp03Uf04 #DamMp03Uf05 #DamMp03Uf06
 +
</nowiki>
 +
 
En aquest curs treballarem amb el llenguatges Python.
 
En aquest curs treballarem amb el llenguatges Python.
 
*El llenguatge Python ha incrementat la seva quota de mercat progressivament, sobretot mercès l'impuls donat per Google amb el seu App Engine. És un llenguatge orientat a objectes nadiu i de més alt nivell que el C++, el que permet una manipulació més elegant amb un rendiment raonable.
 
*El llenguatge Python ha incrementat la seva quota de mercat progressivament, sobretot mercès l'impuls donat per Google amb el seu App Engine. És un llenguatge orientat a objectes nadiu i de més alt nivell que el C++, el que permet una manipulació més elegant amb un rendiment raonable.
Línia 11: Línia 17:
  
 
=== Llenguatge Python ===
 
=== Llenguatge Python ===
* [[Python prompt]]: per millorar la consola Python amb autocompletion.
 
 
* [[Python: introducció ràpida]]: per conexiedors del C. Exercicis inclosos al final.
 
* [[Python: introducció ràpida]]: per conexiedors del C. Exercicis inclosos al final.
 
* [[Python: tipus bàsics de dades]]: nombres, strings (cadenes), llistes, tuples i diccionaris. Exercicis inclosos al final.
 
* [[Python: tipus bàsics de dades]]: nombres, strings (cadenes), llistes, tuples i diccionaris. Exercicis inclosos al final.
Línia 17: Línia 22:
 
** [http://www.saltycrane.com/blog/2008/01/how-to-use-args-and-kwargs-in-python/ Keyword args article 1]
 
** [http://www.saltycrane.com/blog/2008/01/how-to-use-args-and-kwargs-in-python/ Keyword args article 1]
 
** [http://docs.python.org/2/tutorial/controlflow.html#keyword-arguments Keyword args (pagina oficial python.org)].
 
** [http://docs.python.org/2/tutorial/controlflow.html#keyword-arguments Keyword args (pagina oficial python.org)].
 +
* Hacks:
 +
** [[Python prompt]]: per millorar la consola Python amb autocompletion.
  
 
=== POO ===
 
=== POO ===
Línia 45: Línia 52:
 
*# [[PyQt: pintar dintre d'un widget]]
 
*# [[PyQt: pintar dintre d'un widget]]
 
*# [[PyQt: Timers i pilotes rebotant]]
 
*# [[PyQt: Timers i pilotes rebotant]]
 +
*# [[PyQt: Imatges i sprites]]
 
*# [[PyQt: joc del mur]]
 
*# [[PyQt: joc del mur]]
 
*# [[PyQt4: utilitzant Qt Designer]]
 
*# [[PyQt4: utilitzant Qt Designer]]
Línia 68: Línia 76:
  
 
== UF6: POO. Introducció a la persistència en BD ==
 
== UF6: POO. Introducció a la persistència en BD ==
Treballant amb Java:
 
* [[Java: introducció ràpida]]
 
* [[Android]]
 
  
 +
=== Persistència d'objectes Python ===
 +
Es poden utilitzar ''Shelve'' i ''ZODB''. S'utilitzen de manera molt similar, disposem d'una arrel (root), que és un diccionari persistent, on poden enregistrar els nostres objectes. La diferència més important és que a ZODB cal fer un commit, i que té la possibilitat de ''multithreading'' mitjançant l'accés per xarxa amb ZEO.
  
Persistència en Python:
 
 
* [http://docs.python.org/2/library/pickle.html Pickle]: és una eina de serialització de baix nivell. Serà complicat utilitzar-la.
 
* [http://docs.python.org/2/library/pickle.html Pickle]: és una eina de serialització de baix nivell. Serà complicat utilitzar-la.
 
* [http://docs.python.org/2/library/shelve.html Shelve]: utilitza ''pickle'' com a base, però simplifica la utilització.
 
* [http://docs.python.org/2/library/shelve.html Shelve]: utilitza ''pickle'' com a base, però simplifica la utilització.
Línia 79: Línia 85:
 
** Zope Object Database: versió ''data storage'' (1 fitxer)
 
** Zope Object Database: versió ''data storage'' (1 fitxer)
 
** ZEO (ZODB per socket, permet múltiples connexions simultànies)
 
** ZEO (ZODB per socket, permet múltiples connexions simultànies)
 +
*** [[Xat amb ZEO]]: programa de xat amb el servidor ZODB per xarxa.
  
Utilitzarem ''Shelve'' i ''ZODB'' en el curs. S'utilitzen de manera molt similar, disposem d'una arrel (root), que és un diccionari persistent, on poden enregistrar els nostres objectes. La diferència més important és que a ZODB cal fer un commit, i que té la possibilitat de multithreading mitjançant l'accés amb ZEO.
+
Pràctiques 2015:
 +
# [[QtreGimp]]: crearem formes geomètriques i les enregistrarem en arxius amb ''shelve''.
 +
# [[Web Services]]
 +
# [[Web Services: exemple Escacs]]
  
  
=== Exercicis ===
+
=== Altres ===
# [[JsonXat]]: establirem uns serveis web per permetre xat des de dispositius mòbils i una app Android.
+
Treballant amb Java:
# [[QtreGimp]]: crearem formes geomètriques i les enregistrarem en arxius amb ''shelve''.
+
* [[Java: introducció ràpida]]
# [[Xat amb ZEO]]: programa de xat amb el servidor ZODB per xarxa.
+
* [[Android]]
 +
* [[JsonXat]]: establirem uns serveis web per permetre xat des de dispositius mòbils i una app Android.

Revisió de 09:12, 25 jul 2018

#FpInfor #AsixMp03 #DawMp03 #DamMp03 #AsixMp03Uf01 #AsixMp03Uf02 #AsixMp03Uf03 #DawMp03Uf01 #DawMp03Uf02 #DawMp03Uf03 #DawMp03Uf04 #DawMp03Uf05 #DawMp03Uf06 #DamMp03Uf01 #DamMp03Uf02 #DamMp03Uf03 #DamMp03Uf04 #DamMp03Uf05 #DamMp03Uf06

En aquest curs treballarem amb el llenguatges Python.

  • El llenguatge Python ha incrementat la seva quota de mercat progressivament, sobretot mercès l'impuls donat per Google amb el seu App Engine. És un llenguatge orientat a objectes nadiu i de més alt nivell que el C++, el que permet una manipulació més elegant amb un rendiment raonable.


UF4: Programació Orientada a Objectes. Fonaments[modifica]

Llenguatges compilats i interpretats. Diferències i implicacions.

Referències:

Llenguatge Python[modifica]

POO[modifica]

Exercicis: POO Exercicis


UF5: POO. Llibreries de classes fonamentals[modifica]

Altres temes[modifica]

Més coses:


UF6: POO. Introducció a la persistència en BD[modifica]

Persistència d'objectes Python[modifica]

Es poden utilitzar Shelve i ZODB. S'utilitzen de manera molt similar, disposem d'una arrel (root), que és un diccionari persistent, on poden enregistrar els nostres objectes. La diferència més important és que a ZODB cal fer un commit, i que té la possibilitat de multithreading mitjançant l'accés per xarxa amb ZEO.

  • Pickle: és una eina de serialització de baix nivell. Serà complicat utilitzar-la.
  • Shelve: utilitza pickle com a base, però simplifica la utilització.
  • ZODB:
    • Zope Object Database: versió data storage (1 fitxer)
    • ZEO (ZODB per socket, permet múltiples connexions simultànies)
      • Xat amb ZEO: programa de xat amb el servidor ZODB per xarxa.

Pràctiques 2015:

  1. QtreGimp: crearem formes geomètriques i les enregistrarem en arxius amb shelve.
  2. Web Services
  3. Web Services: exemple Escacs


Altres[modifica]

Treballant amb Java: