Diferència entre revisions de la pàgina «Programació»
Salta a la navegació
Salta a la cerca
Línia 70: | Línia 70: | ||
== UF6: POO. Introducció a la persistència en BD == | == UF6: POO. Introducció a la persistència en BD == | ||
− | |||
− | |||
− | |||
− | |||
+ | === 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. | ||
− | |||
* [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 83: | Línia 80: | ||
** ZEO (ZODB per socket, permet múltiples connexions simultànies) | ** ZEO (ZODB per socket, permet múltiples connexions simultànies) | ||
− | + | Exercicis: | |
+ | # [[QtreGimp]]: crearem formes geomètriques i les enregistrarem en arxius amb ''shelve''. | ||
+ | # [[Xat amb ZEO]]: programa de xat amb el servidor ZODB per xarxa. | ||
+ | |||
+ | |||
+ | === Serveis web JSON === | ||
+ | # [[Serveis Web]] | ||
− | === | + | === Altres === |
− | + | Treballant amb Java: | |
− | + | * [[Java: introducció ràpida]] | |
− | + | * [[Android]] | |
+ | * [[JsonXat]]: establirem uns serveis web per permetre xat des de dispositius mòbils i una app Android. |
Revisió del 20:36, 16 març 2015
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.
Contingut
UF4: Programació Orientada a Objectes. Fonaments
Llenguatges compilats i interpretats. Diferències i implicacions.
Referències:
- Wikipèdia: http://es.wikipedia.org/wiki/Programaci%C3%B3n_orientada_a_objetos
- Wikibooks: http://en.wikibooks.org/wiki/Python_Programming/Object-oriented_programming
Llenguatge Python
- 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: keyworded arguments:
- Hacks:
- Python prompt: per millorar la consola Python amb autocompletion.
POO
- POO Introducció. Objectes i les característiques (herència, sobrecàrrega, polimorfisme).
- POO Classes. Instanciació, mètodes i atributs, constructors i destructors.
- POO Herència. Una de les principals característiques de la POO.
- POO: Polimorfisme. Una altra característica principal de la POO. En Python no és tan rellevant degut als tipus dinàmics.
- POO Sobrecàrrega: la sobrecàrrega s'aplica a mètodes i operadors. En Python no s'utilitza en favor dels keyworded arguments.
- POO Operadors: operacions de comparació entre classes.
- POO operadors 2: més exemples d'operadors amb objectes (clients).
- Python: variables estàtiques o de classe
Exercicis: POO Exercicis
UF5: POO. Llibreries de classes fonamentals
- Estructures de dades:
- Bàsiques: nombre (sencer, flotant), caràcter, booleà
- Avançades: vector, llista, matriu, cua (queue), pila (stack), hash table, arbres (binaris, multicamí), grafs
- Python: variables estàtiques o de classe
- Excepcions (amb algun exemple):
- Wikipedia: http://es.wikipedia.org/wiki/Manejo_de_excepciones
- Tutorial sobre excepcions a python.org
- Llistat d'excepcions en Python: http://docs.python.org/2/library/exceptions.html
- Python: GUI (referències). Tutorial:
- PyQt: introducció: Aplicació, layouts, signals/slots i widgets
- PyQt: pintar dintre d'un widget
- PyQt: Timers i pilotes rebotant
- PyQt: Imatges i sprites
- PyQt: joc del mur
- PyQt4: utilitzant Qt Designer
- PyQt4: utilitzant Qt Designer 2: diàlegs i ListWidget
- PyQt: accés a:
Altres temes
Més coses:
- Templates
- Col·leccions i iteradors
- Concurrència: (llibreria threading) http://docs.python.org/2/library/threading.html
- Threads (fils d'execució)
- Timers:
- Signals
- Mutex (locks) i semàfors
- Fluxos (streams)
UF6: POO. Introducció a la persistència en BD
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.
- 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)
Exercicis:
- QtreGimp: crearem formes geomètriques i les enregistrarem en arxius amb shelve.
- Xat amb ZEO: programa de xat amb el servidor ZODB per xarxa.
Serveis web JSON
Altres
Treballant amb Java:
- Java: introducció ràpida
- Android
- JsonXat: establirem uns serveis web per permetre xat des de dispositius mòbils i una app Android.