cifo
  • Imprimeix

Desenvolupament Java

Aquest curs té com a objectiu fonamental la comprensió dels conceptes generals del paradigma de la programació orientada a objectes, i l'adquisició dels coneixements necessaris per al desenvolupament d'aplicacions amb llenguatges de programació orientats a objectes. Per això, el curs ensenya com dissenyar/modelar programes (recolzant-se en la notació gràfica del Llenguatge de Modelatge Unificat, UML), així com la posterior implementació del disseny creat a un llenguatge de programació concret, en aquest cas, Java.

Per tant, l'aproximació és aprendre orientació a objectes primer, i després saber implementar-los en el llenguatge corresponent, amb les seves característiques específiques. L'enfocament del curs és fonamentalment pràctic, orientat a la resolució d'exercicis, la qual cosa requereix una dedicació especial per part de l'estudiant.

El projecte final serà desenvolupar el software suposadament instal·lat en un quiosc per fer comandes en un restaurant de menjar ràpid.

L'objectiu principal és, a partir dels coneixements previs de programació que ja té l'estudiant, aprendre els conceptes d'orientació a l'objecte i saber aplicar aquests conceptes en el desenvolupament de programes orientats a l'objecte amb el llenguatge Java. Aquest objectiu es descompon i complementa en els objectius/competències següents:

  1. Aprendre i interioritzar els conceptes d'orientació a l'objecte per poder dissenyar qualsevol software seguint aquest paradigma.
  2. Conèixer els beneficis que aporta l'orientació a l'objecte pel que fa a la reutilització de codi i l'encapsulació de les dades.
  3. Introduir els diagrames de classes UML per comunicar quin és el disseny d'un software de manera visual i formal.
  4. Aprendre a programar en Java per desenvolupar un software en aquest llenguatge utilitzant el paradigma d'orientació a l'objecte.
  • Introducció al paradigma de la programació orientada a objectes
    • Programació estructurada
    • Programació orientada a objectes
  • Objecte i classe
    • Conceptes d’objecte i classe
    • Atributs i mètodes d’una classe
    • Mètodes constructor i destructor d’una classe
    • Instància
  • Encapsulació i extensió
    • Concepte d’encapsulació
    • Ocultació
    • Concepte d’extensió
    • Exemples i casos d’ús
  • Associació i herència
    • Concepte d’associació
    • Tipus d’associacions i propietats
    • Concepte i tipus d’herències
    • Exemple resum
  • Tipus de classe i interfície
    • Tipus de classes
    • Concepte d’interfície
    • Casos d’ús

La metodologia del curs està concebuda per desenvolupar les competències tècniques i les soft skills necessàries per comportar-se amb èxit en un entorn professional real. Aquesta metodologia es basa en la combinació d’unitats formatives de curta durada (les PLA) basades en reptes i activitats concrets.

L’aplicació d’aquesta metodologia té tres característiques bàsiques:

  • Disseny i avaluació basats en competències. El curs es dissenya en base a competències tècniques de desenvolupament orientat a objectes i les soft skills vinculades al treball en equip, la resolució de problemes, el disseny i gestió de projectes, la presa i comunicació de decisions, i la cerca, gestió i ús de la informació. 
  • Cursos centrats en l’activitat. Els cursos es composen d’activitats PLA (Personal Learning Activities) definides a partir d’un repte. Hi ha diversos tipus de PLA en funció del tipus d’aprenentatges i de les competències que s’hi treballin, dels resultats esperats i del paper que juguin en relació amb el conjunt del curs: 
  1. Projecte: és l'activitat central del curs i té com a objectiu final el desenvolupament d’un producte de l’àmbit professional. 
  1. Taller: activitat on es fa una formació de tipus teòrica. Els conceptes apresos es posen en pràctica mitjançant un conjunt d’exemples. 

Formació basada en projectes. No només les PLA estan dissenyades al voltant d’un repte, sinó que el curs té com a fita final la presentació d’un producte professional desenvolupat al llarg d’un projecte, i reproduir els principals elements i formes de treball dels entorns tecnològics.

Gràcies al projecte final es posarà en pràctica i s'aprofundirà en les competències generals del curs mitjançant l'elaboració d'un treball de desenvolupament complet d'una aplicació Java. Concretament, l’estudiant haurà d’acabar de desenvolupar el software suposadament instal·lat en un quiosc per fer comandes en un restaurant de menjar ràpid. Així doncs, partint de la feina feta en les PLA de tipus “projecte” realitzades al llarg del curs, l'estudiant haurà d’incloure les parts de vista i controlador al software, així com acabar d’implementar els petits detalls que quedin de la part de model.

Tot el treball de desenvolupament estarà guiat per les competències treballades en els diferents tallers i PLA de projecte del curs.

Així mateix, durant l'elaboració d'aquest projecte es pretén que l’estudiant treballi amb un entorn professional de desenvolupament i s'enfronti a situacions reals que tot programador se sol trobar. Per tant, s'intentarà que l’estudiant treballi: en equip, seguint metodologies àgils, orientat a negoci, etc. De la mateixa manera, cal destacar que es farà especial èmfasi en els aspectes relacionats amb la planificació, el seguiment, la recerca d'informació, les habilitats comunicatives, etc.

La realització d’aquest projecte requerirà posar en pràctica competències de gestió de projectes des de l’inici fins al final del treball. Des del començament, els estudiants utilitzaran l’eina Trello com a suport a la seva documentació, que permetrà la visualització del flux del seu treball, i compartir objectius, tasques i fites amb el professor i altres companys, com també recursos i qualsevol altre element d’interès.

  • Java Development Kit (JDK)
  • Eclipse com a entorn de desenvolupament integrat (IDE)
  • Material UOC de Disseny i Programació Orientats a Objectes
  • Persones amb coneixements alts de programació estructurada amb llenguatges com C, Pascal o altres.

La comprensió dels conceptes de l'orientació a objectes és un requisit fonamental per a l'exercici professional en l'àmbit general del Desenvolupament de Sistemes Programari, incloent les activitats d'anàlisi, disseny i programació.

Dins del desenvolupament de la professió els llenguatges de modelatge d'informació com UML són el mitjà de comunicació i documentació més difós en les empreses de desenvolupament, a causa de la proliferació d'eines d'Enginyeria del Programari Assistida per Ordinador (Computer Aided Programari Engineering, CASE) i a les Metodologies de Desenvolupament que els utilitzen com a notació.

Addicionalment, l'enfocament orientat a objectes s'utilitza en àrees de gestió en l'empresa, com és el cas del Modelatge o la Reenginyeria dels Processos de Negoci.

D'altra banda, els llenguatges orientats a objectes ocupen un lloc central en la indústria del programari, a causa de l'àmplia difusió de llenguatges d'aquest tipus (com Java, C++ o el més recent C#), i podem considerar que el seu coneixement és requisit imprescindible per a les activitats de desenvolupament en general.

Durada

300 hores

Calendari

De setembre a desembre 2018

El curs el coordinaran David García Solórzano i Carles Ventura Royo.

David García Solórzano és professor dels Estudis d'Informàtica, Multimèdia i Telecomunicació de la Universitat Oberta de Catalunya (UOC). És enginyer Informàtic i Multimèdia per la Universitat Ramon Llull i, alhora, Doctor per la Universitat Oberta de Catalunya. Actualment, és responsable d’assignatures del Màster de desenvolupament web i de l’assignatura de disseny i programació orientada a objectes dels Graus de Tecnologies de Telecomunicació i Multimèdia.

Carles Ventura Royo és professor dels Estudis d’Informàtica, Multimèdia i Telecomunicació, i investigador del grup de recerca Scene Understanding and Artificial Intelligence (SUnAI), ambdós de la Universitat Oberta de Catalunya (UOC). És doctor per la Universitat Politècnica de Catalunya (2016), i enginyer de Telecomunicació per la Universitat Politècnica de Catalunya (2010). La seva activitat docent se centra en la intel·ligència artificial, l'aprenentatge computacional, les estructures de dades i la disseminació de la recerca. La seva recerca està focalitzada en l'àrea de la visió per computador, específicament en la detecció i reconeixement d'objectes i la segmentació d'imatges.

La realització d’aquest curs permetrà convalidar l’assignatura de “Disseny i Programació Orientats a Objectes” (6 crèdits ECTS) del Grau de Tecnologies de Telecomunicació de la Universitat Oberta de Catalunya (UOC). Aquesta convalidació estarà condicionada al fet que l’estudiant compleixi els requeriments necessaris per accedir a un programa oficial de grau universitari.

Els camps marcats amb * són obligatoris.

Formulari de sol·licitud d'inscripció al curs Desenvolupament de Java









 
Informació bàsica de protecció de dades del tractament “Base de dades de l’alumnat” 
Responsable del tractament: Direcció del Servei Públic d’Ocupació de Catalunya.
Finalitat: La finalitat d’aquest fitxer és la de gestionar el tractament de dades de l'alumnat inscrit i que vol fer cursos al Servei Públic d'Ocupació de Catalunya.
Legitimació: Compliment de la Llei 13/2015, de 9 de juliol, d’ordenació del sistema d’ocupació i del Servei Públic d’Ocupació de Catalunya i del Reial decret legislatiu 3/2015, de 23 d’octubre, pel qual s’aprova el text refós de la Llei d’Ocupació.
Destinataris: Les dades no es cediran a tercers.
Drets de les persones interessades: Teniu dret a accedir a les dades facilitades, rectificar-les, cancel·lar-les i a oposar-vos al seu tractament, en les condicions previstes per la legislació vigent. Per exercir aquests drets, heu d’adreçar un escrit a la Direcció del Servei Públic d’Ocupació de Catalunya; carrer Llull, 297-307, 08019- Barcelona, o correu electrònic adreçat a  protecciodades.soc@gencat.cat signat electrònicament amb DNI electrònic o certificat digital reconegut. Més informació al web: http://serveiocupacio.gencat.cat/ca/soc/proteccio-de-dades/