Diferència entre revisions de la pàgina «Entorns de desenvolupament»
Salta a la navegació
Salta a la cerca
Línia 52: | Línia 52: | ||
== UF3: Introducció al disseny orientat a objectes == | == UF3: Introducció al disseny orientat a objectes == | ||
UML: Unified Modelling Language | UML: Unified Modelling Language | ||
+ | * [http://ca.wikipedia.org/wiki/Llenguatge_unificat_de_modelat UML a Wikipèdia en català]. | ||
+ | * [http://en.wikipedia.org/wiki/Unified_Modeling_Language UML a Wikièdia en anglès]. | ||
+ | |||
Algunes aplicacions per UML disponibles: | Algunes aplicacions per UML disponibles: | ||
Línia 63: | Línia 66: | ||
** UMLpad. | ** UMLpad. | ||
** Dia. | ** Dia. | ||
+ | |||
=== Diagrames UML === | === Diagrames UML === | ||
* Diagrames ESTRUCTURALS: | * Diagrames ESTRUCTURALS: | ||
− | ** Diagrama de classes: [http://en.wikipedia.org/wiki/Class_diagram Wikipedia] | + | ** Diagrama de classes: [http://en.wikipedia.org/wiki/Class_diagram Wikipedia (en)] |
** Diagrama de components. | ** Diagrama de components. | ||
− | ** Diagrama de desplegament [http://en.wikipedia.org/wiki/Deployment_diagram Wikipedia] | + | ** Diagrama de desplegament: [http://en.wikipedia.org/wiki/Deployment_diagram Wikipedia (en)] |
* Diagrames de COMPORTAMENT (behavioral diagrams): | * Diagrames de COMPORTAMENT (behavioral diagrams): | ||
− | ** Casos d'ús [http://en.wikipedia.org/wiki/Use_case Wikipedia] | + | ** Casos d'ús [http://en.wikipedia.org/wiki/Use_case Wikipedia (en)] |
− | ** Diagrama d'activitat: [http://en.wikipedia.org/wiki/Control_flow_diagram Wikipedia] | + | ** Diagrama d'activitat: similar als diagrames de flux. [http://en.wikipedia.org/wiki/Control_flow_diagram Wikipedia (en)] |
− | ** Diagrama de seqüència: [http://en.wikipedia.org/wiki/Sequence_diagram Wikipèdia] [http://www.ibm.com/developerworks/rational/library/3101.html IBM] | + | ** Diagrama de seqüència: [http://en.wikipedia.org/wiki/Sequence_diagram Wikipèdia] , [http://www.ibm.com/developerworks/rational/library/3101.html IBM] , [http://www.cs.umd.edu/~mvz/cmsc435-s09/pdf/cell-phone-sequence-chart.pdf exemple telèfons] |
− | ** Diagrama d'estats | + | ** Diagrama d'estats: |
+ | *** [http://es.opendomo.org/super-state Exemple alarma]. | ||
+ | *** [http://androideity.com/2011/07/06/ciclo-de-vida-de-una-actividad/ Exemple aplicació mòbil Android]. | ||
+ | |||
=== Exercicis UML === | === Exercicis UML === | ||
− | # Fes el diagrama de classes per un joc de "Space Invaders" com el de la imatge | + | # Fes el diagrama de classes per un joc de "Space Invaders" com el de la imatge del final. |
− | # | + | # Fes el diagrama d'estats pel joc (en joc, home, configuració, ranking). |
− | + | # Fes el diagrama de seqüència del joc (events de moviment, disparar, pintar) | |
+ | |||
+ | [[Fitxer:space_invaders_2.gif]] |
Revisió del 18:12, 2 maig 2013
...intro...
Contingut
UF1: Desenvolupament de programari
- Conceptes generals de programació:
- Codi font, compilació, codi executable, llenguatges compilats vs interpretats.
- Enginyeria del software:
- Metodologia: anàlisi, especificació, disseny, desenvolupament/implementació, test, desplegament/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.
- Projecte de software:
- Una guía que s'ajusta a les etapes de la metodologia del software: http://xavier.amatriain.net/PFC/
- Metodologia: anàlisi, especificació, disseny, desenvolupament/implementació, test, desplegament/producció, documentació, manteniment
- IDEs (Integrated Development Environment) per Python:
- Geany: senzill però amb tot el què es necessita per començar. El pots instal·lar en Windows o en GNU/Linux (Debian) amb:
sudo apt-get install geany
- SublimeText: molt bo per Python (de pagament).
- Eclipse + Pydev:
- Eclipse és un IDE fet en Java (i per tant molt adient per aquest llenguatge).
- PyDev és un plug-in per Python en Eclipse. Instal·lació: http://pydev.org/manual_101_install.html
- Geany: senzill però amb tot el què es necessita per començar. El pots instal·lar en Windows o en GNU/Linux (Debian) amb:
- Frameworks per web en Python:
- Pyramid: En aquest curs treballarem Pyramid. Trobaràs el necessri en aquest tutorial.
- Django: https://www.djangoproject.com/
UF2: Optimització de programari
- Python: depuració (a cacauet).
- Seguirem treballant Pyramid:
Control de versions
- GIT (control de versions)
- Git: comandes: resum de les comandes més habituals.
- http://github.com : feu-vos un compte. Important per l'entrega de projectes.
- Llibre: http://git-scm.com/book/es
- SVN o Subversion
Altres
- Proves (test)
- Documentació:
- Sphinx (per Python i C/C++): http://sphinx.pocoo.org/
- Optimització del codi
- Refacció
- Control d'errors o bugs
UF3: Introducció al disseny orientat a objectes
UML: Unified Modelling Language
Algunes aplicacions per UML disponibles:
- Linux (amb apt-get o yum):
- umbrello (recomanat)
- Dia
- Windows:
- MS Visual Studio.
- MS Visio.
- umbrello el trobareu sota KDE on Windows (entre altres programes).
- UMLpad.
- Dia.
Diagrames UML
- Diagrames ESTRUCTURALS:
- Diagrama de classes: Wikipedia (en)
- Diagrama de components.
- Diagrama de desplegament: Wikipedia (en)
- Diagrames de COMPORTAMENT (behavioral diagrams):
- Casos d'ús Wikipedia (en)
- Diagrama d'activitat: similar als diagrames de flux. Wikipedia (en)
- Diagrama de seqüència: Wikipèdia , IBM , exemple telèfons
- Diagrama d'estats:
Exercicis UML
- Fes el diagrama de classes per un joc de "Space Invaders" com el de la imatge del final.
- Fes el diagrama d'estats pel joc (en joc, home, configuració, ranking).
- Fes el diagrama de seqüència del joc (events de moviment, disparar, pintar)