Diferència entre revisions de la pàgina «DAM-M3-UF4. Entorn de desenvolupament»

De Wiki IES Marianao. Departament Informàtica
Dreceres ràpides: navegació, cerca
(Es crea la pàgina amb «torna M3 - Programació == IDE. Entorns Integrats de Desenvolupament == === Introducció === Inicialment tots els programes i eines que es feien servir per a des...».)
 
(IDE. Entorns Integrats de Desenvolupament)
 
(Hi ha 4 revisions intermèdies del mateix usuari que no es mostren)
Línia 12: Línia 12:
  
 
* '''Editors''': Coneixen el llenguatge i ressalten la sintaxis mitjançant colors per facilitar la visibilitat i la correcció d’errors.
 
* '''Editors''': Coneixen el llenguatge i ressalten la sintaxis mitjançant colors per facilitar la visibilitat i la correcció d’errors.
 +
 +
* '''Compilador / Intèrpret''': Els propis de l'entorn de programació del llenguatge, a Java l'intèrpret (java) i el compilador (javac) els porta el JDK.
  
 
* '''Depuradors''': Són eines que permeten la localització d’errors. Van aparèixer amb els intèrprets, encara que actualment hi ha depuradors per a la majoria de compiladors.
 
* '''Depuradors''': Són eines que permeten la localització d’errors. Van aparèixer amb els intèrprets, encara que actualment hi ha depuradors per a la majoria de compiladors.
  
* '''Preprocessadors''': Gestió prèvia per a facilitar la tasca del compilador.
+
* ''Preprocessadors'': Gestió prèvia per a facilitar la tasca del compilador.
  
 
* ''Ensambladors'': Només si el compilador genera codi ensamblador.
 
* ''Ensambladors'': Només si el compilador genera codi ensamblador.
Línia 34: Línia 36:
 
Algun dels IDE basats a Java són:
 
Algun dels IDE basats a Java són:
  
 +
* De codi lliure/obert
 +
**Eclipse
 +
**NetBeans
 +
* Propietaris
 +
**JBuilder
 +
**Intellij IDEA
 +
**JCreator
 +
 +
=== Eclipse ===
 +
 +
 +
Eclipse és un dels IDE més coneguts per treballar amb Java. Algunes de les característiques d’Eclipse són:
 +
 +
* Gratuït i de codi obert
 +
 +
* Implementat en Java (Per tant Suporta múltiples plataformes)
 +
 +
* Modular. Múltiples plugins que desenvolupa una comunitat molt activa, que permeten ampliar la seva funcionalitat (Altres llenguatges, més eines d’ajuda, etc..)
 +
 +
El principal desavantatge:
 +
 +
* Un sistema d'actualitzacions i d'instal·lació de programari que deixa molt que desitjar
 +
 +
==== Organització. Vistes ====
 +
 +
Els elements que es presenten a la pantalla d’Eclipse s’anomenen perspectives, per defecte es proporcionen algunes vistes predefinides, però es poden modificar, inclús crear-ne de noves o esborrar-les i tornar la les perspectives originals.
 +
 +
[[File: eclipse1.png]]
 +
 +
 +
'''Perspectives'''
 +
 +
Accessibles des de Window > Open Perspective
 +
 +
* Java: Perspectiva per a la programació.
 +
 +
* Debug: Relacionada amb les tasques de depuració que veurem més endavant
 +
 +
 +
'''Elements i vistes d’utilitat'''
 +
 +
* Editor. Mostra els programes en Java per modificar-los
 +
 +
* Consola. Mostra el resultat de l’execució dels programes. (sortides, entrades i errors)
 +
 +
* Package Explorer: Permet veure els diferents projectes i la seva estructura lògica. Només codis font
 +
 +
* Navigator: Permet veure la estructura física dels projectes. Tal com es troba al sistema de fitxers de l’ordinador.
 +
 +
* Outline: Mostra els mètodes i atributs dins de la classe i la seva informació.
 +
 +
* Hierarchy: Mostra la jerarquia de relacions d’herència
 +
 +
 +
====  Estructura d’un projecte ====
 +
 +
Al fer un projecte és possible que el nombre de fitxers sigui cada vegada més gran, d’aquesta manera cal organitzar-los. Una bona manera de fer-ho és la següent, dins el directori del projecte
 +
 +
/src : Arxius amb el codi font dels programes
 +
 +
/bin : Arxius amb els programes compilats
 +
 +
/doc : Arxius de documentació del projecte
 +
 +
/lib : Paquets i llibreries (.jar)
 +
 +
Eclipse proporciona de manera automàtica aquesta estructura
 +
 +
Qualsevol document a Eclipse es guarda dins un projecte
 +
 +
Cal crear un projecte Java per començar a treballar
 +
 +
<pre>
 +
File > New > Project > Java Project
 +
 +
=> Indicar el nom
 +
 +
=> Contents : Projecte nou o a partir d’algun font
 +
 +
=> JDK Compliance: Escollir compilador
 +
 +
=> Project Layout: Estructura de directoris del projecte (Seleccionar create separate source and output project permet separar els fitxers font dels fitxers compilats)
 +
 +
</pre>
 +
 +
 +
==== Creació de programes ====
 +
 +
Hi ha dues maneres de començar a codificar els programes
 +
 +
* Importar arxius (File > Import > File System) dins un projecte existent
 +
 +
* Crear un nou element (En el nostre cas una classe, File > New > Class) dins un projecte existent.
 +
** No cal modificar les opcions per defecte
 +
** Permet indicar si volem una classe main, package, herència, interfaces que implementa, etc...
 +
 +
 +
==== Importar/Exportar projectes ====
 +
 +
Assistents
 +
 +
==== Documentació d’un projecte ====
 +
 +
Un altre dels beneficis d’usar un IDE és que centralitza múltiples eines, per exemple Eclipse permet documentar els projectes usant el programa '''javadoc''' de manera senzilla.
 +
 +
* Documentar projectes (Project > Generate Javadoc ... >)
 +
 +
Permet afegir comentaris especials (Etiquetes de Javadoc) com el nom de l’autor i versió del programa.
 +
 +
En aquest cas el nostre programa ha de tenir per exemple una capçalera com la següent:
 +
 +
<pre>
 +
/**
 +
* @author Alex
 +
* @version 1.0
 +
*
 +
*/
 +
</pre>
 +
 +
 +
==== Ajuda a la programació ====
 +
 +
Eclipse proporciona múltiples facilitats als programadors
 +
 +
* '''Errors de compilació''': Es mostren en temps real subratllats en vermell
 +
 +
* '''Warnings''': Es mostren en temps real subratllats en groc.
 +
 +
* '''Autocorrecció''': Seleccionar marca del marge esquerra i escollir correcció adient
 +
 +
* '''Autocompletar'''
 +
** CTRL + Espai: Noms accessibles, variables locals, classes, bucles (for, while....)
 +
** Després de posar un punt mostra elements d’una classe
 +
** Després de posar parèntesis mostra la signatura dels mètodes
 +
 +
* '''Documentació''': La documentació Javadoc externa (como per exemple, la documentació oficial de las classes de Java) pot consultar-se modificant les preferències del JRE instal·lat.
 +
 +
<pre>
 +
Window > Preferences > Installed JRE.
 +
</pre>
 +
 +
Cal especificar on es troba el Javadoc de cadascuna de les llibreries, per exemple a http://java.sun.com/javase/6/docs/api/ . Deixant el cursor sobre el nom de la classe i polsant "Majúscules + F2" s’obrirà la documentació.
 +
 +
També tenim opcions que ens permeten realitzar algunes tasques de manera molt senzilla.
 +
 +
* El '''menú Source''':
 +
** Permet comentar codi (Una o vàries línies, Comment)
 +
** Identació. (Format, ordenació, tabulació)
 +
** Afegir les llibreries necessàries (Organize imports)
 +
**Altres
 +
***Override and implement methods. Mostra els mètodes de la superclasse per sobreescriure.
 +
***Generate getter and setter. Genera mètodes consultors i modificadors dels atributs.
 +
***Generate constructor. Crea el mètode constructor amb o sense atributs.
 +
***Sorround with try/catch. Envolta un bloc de codi amb la intrucció try / catch de control d’errors.
 +
***Externalize strings: Treu els texts a un fitxer extern i genera un classe per accedir-hi.
 +
 +
*El '''menú Refactor''':
 +
**Rename: La millor manera de modificar noms de classes, projectes, etc.. sense que quedi res inconsistent. Pensa que modificar directament el nom d’una classe pot generar errors en totes les classes que hi fan referència
 +
**Change Method Signature. Permet definir la signatura d’un mètode (Capçalera). Nom, tipus de retorn, modificador, paràmetres i excepcions.
 +
**Les altres opcions no són necessàries
 +
 +
==== Depuració i execució de programes ====
 +
 +
Una vegada finalitzat el procés de codificació i depuració dels errors de compilació, el següent pas és l’execució del programa i la comprovació que realitza tot allò que volem.
 +
 +
Eclipse proporciona dues maneres de realitzar aquesta tasca.
 +
 +
*Execució de programes (Run).
 +
 +
*Depuració de programes (Debug).
 +
 +
 +
'''Execució de programes'''
 +
 +
Es poden executar els programes sense sortir de l’entorn i sense necessitat de compilar-los, aquesta tasca la realitza Eclipse de manera transparent a l’usuari.
 +
 +
A més proporciona un entorn d’execució molt configurable. (Run > Run...).
 +
 +
Cal destacar:
 +
 +
*Vista de consola: És la finestra on es realitzaran les operacions d’entrada / sortida amb l’usuari.
 +
 +
*Paràmetres d’entrada: (Program arguments) Es poden indicar els paràmetres d’entrada al programa
 +
 +
*Execució d’Applets: També hi ha la possibilitat d’executar Applets sense haver de crear una pàgina web.
  
  
De codi lliure/obert
+
'''Depuració de programes'''
  
Propietaris
+
A vegades només amb la execució d’un programa no hi ha prou per detectar els errors. El mode de depuració de programes ens permet entrar de manera molt més detallada dins un programa en execució i ens proporciona algunes ajudes, com:
  
Eclipse
+
* Execució controlada. (F5, F6, F7, F8) Podem seguir el programa instrucció darrera instrucció, saltar mètodes, executar fins un cert punt del programa.
  
NetBeans
+
* Vista de variables. Permet observar el valor de les variables en tot moment.
  
JBuilder
+
* Punts d’aturada o breakpoint. (Toggle Breakpoint) Estableix un punt on el programa s’atura i no continua fins que el programador així ho indiqui. Permet indicar condicions en el punt d'aturada.
  
Intellij IDEA
+
Eclipse proporciona una perspectiva dedicada a la depuració on s’inclouen totes aquestes eines.
  
JCreator
+
<pre>
 +
Window > Open Perspective > Debug
 +
</pre>

Revisió de 12:18, 8 set 2022

torna M3 - Programació

IDE. Entorns Integrats de Desenvolupament

Introducció

Inicialment tots els programes i eines que es feien servir per a desenvolupar eren independents i s’executaven des de la línia de comandaments.

Actualment s’utilitzen els entorns integrats de desenvolupament (coneguts com IDE, Integrated Development Environment) que integren totes aquestes eines sota la gestió d’un sol programa.

Els IDE consten almenys d’un editor de text o codi, un compilador i/o intèrpret i un depurador d’errors:

  • Editors: Coneixen el llenguatge i ressalten la sintaxis mitjançant colors per facilitar la visibilitat i la correcció d’errors.
  • Compilador / Intèrpret: Els propis de l'entorn de programació del llenguatge, a Java l'intèrpret (java) i el compilador (javac) els porta el JDK.
  • Depuradors: Són eines que permeten la localització d’errors. Van aparèixer amb els intèrprets, encara que actualment hi ha depuradors per a la majoria de compiladors.
  • Preprocessadors: Gestió prèvia per a facilitar la tasca del compilador.
  • Ensambladors: Només si el compilador genera codi ensamblador.
  • Linkers (enllaçadors): Resolen referències a llibreries i les enllacen amb el programa per generar el codi objecte.
  • Loaders (editors de càrrega): Situa en memòria el programa i gestionen la resta de recursos necessaris per a l’execució.


Algunes de les utilitats que ofereixen són (Principalment llenguatges interpretats o híbrids: VB, Java):

  • Tracers (rastrejadors): permet executar instruccions una a una.
  • BreakPoints (punts de ruptura): indica un punt on s’atura l’execució del programa.
  • Watchers (examinadors de variables): permeten examinar el valor de les variables.

Algun dels IDE basats a Java són:

  • De codi lliure/obert
    • Eclipse
    • NetBeans
  • Propietaris
    • JBuilder
    • Intellij IDEA
    • JCreator

Eclipse

Eclipse és un dels IDE més coneguts per treballar amb Java. Algunes de les característiques d’Eclipse són:

  • Gratuït i de codi obert
  • Implementat en Java (Per tant Suporta múltiples plataformes)
  • Modular. Múltiples plugins que desenvolupa una comunitat molt activa, que permeten ampliar la seva funcionalitat (Altres llenguatges, més eines d’ajuda, etc..)

El principal desavantatge:

  • Un sistema d'actualitzacions i d'instal·lació de programari que deixa molt que desitjar

Organització. Vistes

Els elements que es presenten a la pantalla d’Eclipse s’anomenen perspectives, per defecte es proporcionen algunes vistes predefinides, però es poden modificar, inclús crear-ne de noves o esborrar-les i tornar la les perspectives originals.

Eclipse1.png


Perspectives

Accessibles des de Window > Open Perspective

  • Java: Perspectiva per a la programació.
  • Debug: Relacionada amb les tasques de depuració que veurem més endavant


Elements i vistes d’utilitat

  • Editor. Mostra els programes en Java per modificar-los
  • Consola. Mostra el resultat de l’execució dels programes. (sortides, entrades i errors)
  • Package Explorer: Permet veure els diferents projectes i la seva estructura lògica. Només codis font
  • Navigator: Permet veure la estructura física dels projectes. Tal com es troba al sistema de fitxers de l’ordinador.
  • Outline: Mostra els mètodes i atributs dins de la classe i la seva informació.
  • Hierarchy: Mostra la jerarquia de relacions d’herència


Estructura d’un projecte

Al fer un projecte és possible que el nombre de fitxers sigui cada vegada més gran, d’aquesta manera cal organitzar-los. Una bona manera de fer-ho és la següent, dins el directori del projecte

/src : Arxius amb el codi font dels programes

/bin : Arxius amb els programes compilats

/doc : Arxius de documentació del projecte

/lib : Paquets i llibreries (.jar)

Eclipse proporciona de manera automàtica aquesta estructura

Qualsevol document a Eclipse es guarda dins un projecte

Cal crear un projecte Java per començar a treballar

File > New > Project > Java Project

=> Indicar el nom

=> Contents : Projecte nou o a partir d’algun font

=> JDK Compliance: Escollir compilador

=> Project Layout: Estructura de directoris del projecte (Seleccionar create separate source and output project permet 	separar els fitxers font dels fitxers compilats)


Creació de programes

Hi ha dues maneres de començar a codificar els programes

  • Importar arxius (File > Import > File System) dins un projecte existent
  • Crear un nou element (En el nostre cas una classe, File > New > Class) dins un projecte existent.
    • No cal modificar les opcions per defecte
    • Permet indicar si volem una classe main, package, herència, interfaces que implementa, etc...


Importar/Exportar projectes

Assistents

Documentació d’un projecte

Un altre dels beneficis d’usar un IDE és que centralitza múltiples eines, per exemple Eclipse permet documentar els projectes usant el programa javadoc de manera senzilla.

  • Documentar projectes (Project > Generate Javadoc ... >)

Permet afegir comentaris especials (Etiquetes de Javadoc) com el nom de l’autor i versió del programa.

En aquest cas el nostre programa ha de tenir per exemple una capçalera com la següent:

/**
* @author Alex
* @version 1.0
*
*/


Ajuda a la programació

Eclipse proporciona múltiples facilitats als programadors

  • Errors de compilació: Es mostren en temps real subratllats en vermell
  • Warnings: Es mostren en temps real subratllats en groc.
  • Autocorrecció: Seleccionar marca del marge esquerra i escollir correcció adient
  • Autocompletar
    • CTRL + Espai: Noms accessibles, variables locals, classes, bucles (for, while....)
    • Després de posar un punt mostra elements d’una classe
    • Després de posar parèntesis mostra la signatura dels mètodes
  • Documentació: La documentació Javadoc externa (como per exemple, la documentació oficial de las classes de Java) pot consultar-se modificant les preferències del JRE instal·lat.
Window > Preferences > Installed JRE.

Cal especificar on es troba el Javadoc de cadascuna de les llibreries, per exemple a http://java.sun.com/javase/6/docs/api/ . Deixant el cursor sobre el nom de la classe i polsant "Majúscules + F2" s’obrirà la documentació.

També tenim opcions que ens permeten realitzar algunes tasques de manera molt senzilla.

  • El menú Source:
    • Permet comentar codi (Una o vàries línies, Comment)
    • Identació. (Format, ordenació, tabulació)
    • Afegir les llibreries necessàries (Organize imports)
    • Altres
      • Override and implement methods. Mostra els mètodes de la superclasse per sobreescriure.
      • Generate getter and setter. Genera mètodes consultors i modificadors dels atributs.
      • Generate constructor. Crea el mètode constructor amb o sense atributs.
      • Sorround with try/catch. Envolta un bloc de codi amb la intrucció try / catch de control d’errors.
      • Externalize strings: Treu els texts a un fitxer extern i genera un classe per accedir-hi.
  • El menú Refactor:
    • Rename: La millor manera de modificar noms de classes, projectes, etc.. sense que quedi res inconsistent. Pensa que modificar directament el nom d’una classe pot generar errors en totes les classes que hi fan referència
    • Change Method Signature. Permet definir la signatura d’un mètode (Capçalera). Nom, tipus de retorn, modificador, paràmetres i excepcions.
    • Les altres opcions no són necessàries

Depuració i execució de programes

Una vegada finalitzat el procés de codificació i depuració dels errors de compilació, el següent pas és l’execució del programa i la comprovació que realitza tot allò que volem.

Eclipse proporciona dues maneres de realitzar aquesta tasca.

  • Execució de programes (Run).
  • Depuració de programes (Debug).


Execució de programes

Es poden executar els programes sense sortir de l’entorn i sense necessitat de compilar-los, aquesta tasca la realitza Eclipse de manera transparent a l’usuari.

A més proporciona un entorn d’execució molt configurable. (Run > Run...).

Cal destacar:

  • Vista de consola: És la finestra on es realitzaran les operacions d’entrada / sortida amb l’usuari.
  • Paràmetres d’entrada: (Program arguments) Es poden indicar els paràmetres d’entrada al programa
  • Execució d’Applets: També hi ha la possibilitat d’executar Applets sense haver de crear una pàgina web.


Depuració de programes

A vegades només amb la execució d’un programa no hi ha prou per detectar els errors. El mode de depuració de programes ens permet entrar de manera molt més detallada dins un programa en execució i ens proporciona algunes ajudes, com:

  • Execució controlada. (F5, F6, F7, F8) Podem seguir el programa instrucció darrera instrucció, saltar mètodes, executar fins un cert punt del programa.
  • Vista de variables. Permet observar el valor de les variables en tot moment.
  • Punts d’aturada o breakpoint. (Toggle Breakpoint) Estableix un punt on el programa s’atura i no continua fins que el programador així ho indiqui. Permet indicar condicions en el punt d'aturada.

Eclipse proporciona una perspectiva dedicada a la depuració on s’inclouen totes aquestes eines.

Window > Open Perspective > Debug