Diferència entre revisions de la pàgina «Entorns de desenvolupament»
Salta a la navegació
Salta a la cerca
Línia 2: | Línia 2: | ||
== UF1: Desenvolupament de programari == | == UF1: Desenvolupament de programari == | ||
− | * | + | * Enginyeria del software: |
− | * GIT (control de versions) http://github.com : feu-vos un compte. Important per l'entrega de projectes. | + | ** Metodologia: anàlisi, especificació, disseny, desenvolupament/implementació, desplegament/test (producció), documentació, manteniment |
+ | *** [http://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_software#Metodolog.C3.ADa Metodologia de l'enginyeria de sofware] (Wikipèdia). | ||
+ | ** [http://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_software#Modelos_y_filosof.C3.ADas_de_desarrollo_de_software Models de desenvolupament]: en cascada, de prototips (desenvolupament ràpid), model en espiral, per etapes, iteratiu, RAD (rapid app. devel.), procés unificat, etc. | ||
+ | * GIT (control de versions) | ||
+ | ** [[Git]]: resum de les comandes més habituals. | ||
+ | ** http://github.com : feu-vos un compte. Important per l'entrega de projectes. | ||
* Frameworks per Python: Pyramid i Django | * Frameworks per Python: Pyramid i Django | ||
** virtualenv (ens caldrà prèviament als scaffolds): http://docs.pylonsproject.org/projects/pyramid/en/latest/narr/install.html | ** virtualenv (ens caldrà prèviament als scaffolds): http://docs.pylonsproject.org/projects/pyramid/en/latest/narr/install.html | ||
** Primer projecte en Pyramid amb "single file" (sense ''scaffold''): http://docs.pylonsproject.org/projects/pyramid_tutorials/en/latest/single_file_tasks/single_file_tasks.html | ** Primer projecte en Pyramid amb "single file" (sense ''scaffold''): http://docs.pylonsproject.org/projects/pyramid_tutorials/en/latest/single_file_tasks/single_file_tasks.html | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Línia 30: | Línia 26: | ||
** Integració de Apache WSGI i Pylons: http://code.google.com/p/modwsgi/wiki/IntegrationWithPylons | ** Integració de Apache WSGI i Pylons: http://code.google.com/p/modwsgi/wiki/IntegrationWithPylons | ||
* Variables d'entorn al fitxer .ini: http://pyramid.readthedocs.org/en/latest/narr/environment.html | * Variables d'entorn al fitxer .ini: http://pyramid.readthedocs.org/en/latest/narr/environment.html | ||
− | *... | + | * En producció, per problemes de la codificació per defecte i canviar-la a "utf-8", editar '''/usr/lib/pythonX.Y/sitecustomize.py''' i afegir: |
+ | <syntaxhighlight lang="python"> | ||
+ | import sys | ||
+ | sys.setdefaultencoding('utf-8') | ||
+ | </syntaxhighlight> | ||
+ | * Per generar passwords: http://stackoverflow.com/questions/2257441/python-random-string-generation-with-upper-case-letters-and-digits | ||
+ | * ... | ||
=== Buildout === | === Buildout === |
Revisió del 16:26, 16 set 2012
...intro...
Contingut
UF1: Desenvolupament de programari
- Enginyeria del software:
- Metodologia: anàlisi, especificació, disseny, desenvolupament/implementació, desplegament/test (producció), documentació, manteniment
- Metodologia de l'enginyeria de sofware (Wikipèdia).
- Models de desenvolupament: en cascada, de prototips (desenvolupament ràpid), model en espiral, per etapes, iteratiu, RAD (rapid app. devel.), procés unificat, etc.
- Metodologia: anàlisi, especificació, disseny, desenvolupament/implementació, desplegament/test (producció), documentació, manteniment
- GIT (control de versions)
- Git: resum de les comandes més habituals.
- http://github.com : feu-vos un compte. Important per l'entrega de projectes.
- Frameworks per Python: Pyramid i Django
- virtualenv (ens caldrà prèviament als scaffolds): http://docs.pylonsproject.org/projects/pyramid/en/latest/narr/install.html
- Primer projecte en Pyramid amb "single file" (sense scaffold): http://docs.pylonsproject.org/projects/pyramid_tutorials/en/latest/single_file_tasks/single_file_tasks.html
Pyramid framework
- Pylons + repoze.bfg = Pyramid
- Traversal vs. url_dispatcher
- Estructura típica dels arxius en una web amb Pyramid (models, __init__, views, etc.)
- Fase desenvolupament:
- virtualenv (ens caldrà prèviament als scaffolds): http://docs.pylonsproject.org/projects/pyramid/en/latest/narr/install.html
- Pyramid scaffolds (esquelet de projecte): http://docs.pylonsproject.org/projects/pyramid/en/latest/narr/project.html
- Fase deploy (desplegament/producció):
- Apache i WSGI: http://code.google.com/p/modwsgi/wiki/InstallationInstructions
- Configurant WSGI: http://code.google.com/p/modwsgi/wiki/QuickConfigurationGuide
- Integració de Apache WSGI i Pylons: http://code.google.com/p/modwsgi/wiki/IntegrationWithPylons
- Variables d'entorn al fitxer .ini: http://pyramid.readthedocs.org/en/latest/narr/environment.html
- En producció, per problemes de la codificació per defecte i canviar-la a "utf-8", editar /usr/lib/pythonX.Y/sitecustomize.py i afegir:
import sys
sys.setdefaultencoding('utf-8')
- Per generar passwords: http://stackoverflow.com/questions/2257441/python-random-string-generation-with-upper-case-letters-and-digits
- ...
Buildout
El buildout ens permet construir projectes amb divereses versions dels packages necessaris. Així no tindrem conflictes de diverses aplicacions en un mateix entorn de producció (passaria si instal·lessim els packages al sistema).
UF2: Optimització de programari
- Debug
- Proves (test)
- Documentació:
- Sphinx (per Python i C/C++): http://sphinx.pocoo.org/
- Optimització del codi
- Refacció
- Control de versions: GIT i SVN
- Control d'errors (bugs)
UF3: Introducció al disseny orientat a objectes
UML: Unified Modelling Language
- UML open source: Umbrello
...