Java (llenguatge de programació)

De Viquipèdia

(S'ha redirigit des de: Llenguatge Java)
Dreceres ràpides: navegació, cerca
Logo de Java
Codi font d'un programa escrit amb el llenguatge de programació Java

El llenguatge de programació Java fou dissenyat per James Gosling i els seus companys a Sun Microsystems, a l'any 1990, a partir del C++. Des del seu naixement fou pensat com un llenguatge orientat a objectes, és a dir, que segueix la filosofia de programar mòduls senzills, per tal de crear aplicacions avançades quan tots treballen junts.

Entre 13 de novembre de 2006 i el maig del 2007 Sun alliberà parts de Java com a programari lliure i de codi obert, usant la llicència GPL.

Aquest és un llenguatge interpretat i, per tant, pot semblar lent en comparació amb altres llenguatges, però ofereix un índex de reutilització del codi molt elevat i és possible de trobar moltes llibreries lliures de Java. És un llenguatge flexible i potent per la facilitat amb què es programa i els resultats que ofereix. Un dels trets que el caracteritza i que fa que sigui una eina molt valorada a l'hora de desenvolupar aplicacions distribuïdes, és el fet que sigui un llenguatge multi-plataforma.

Sun Microsystems disposa de tres implementacions diferents de Java:

Per a cada una de les tres implementacions és possible descarregar el JRE (entorn d'execució java) per a executar aplicacions o el SDK (Eines per al desenvolupament d'aplicacions) per a programar aplicacions en Java, aquests inclouen també el JRE necessari.

Un programa desenvolupat en Java no necessita tornar a ser compilat per a poder executar-se en qualsevol de les plataformes que disposi d'una versió instal·lada de JRE prou actualitzada per al programa.

Taula de continguts

[edita] Característiques de Java

Senzill: Java s'ha creat per a ser un llenguatge senzill i amb una elegant sintaxis.Nomès consta de tres tipus de dades primitives i ha eliminat els punters i l'herència multiple

Orientat a objectes: Java segueix els paradigmes de la programació orientada a objectes, ja que la programació amb Java es centra en la manipulació, creació i construcció d'objectes

Distribuït:Java permet la construcció d'aplicacions distribuides per mitjà d'una col-lecció especifica de clases .

Interpretat: Es necessita un interpret per executar els programes de Java, això els fa mès lents però mès flexibles

Robust: Java és un llenguatge robust i fiable, s'ha escrit pensant en poder verificar errors i està molt tipificat.

Segur: Java té escasos problemes de seguretat, caracteristica molt important en les aplicacions distribuides per internet.

Arquitectura neutral: Java és independent de la plataforma final on s'executarà el programa.

Portable: Java és un llenguatge d'alt nivell i independent de la plataforma, això el fa portable.

Alt rendiment: Els compiladors Java han anat millorant les seves prestacions.Els nous compiladors coneguts com JIT permeten un rendiment molt semblant als llenguatges convencionals compilats.

Concurrent: Java permet l'execució de multiples fils d'execució o varies tasques simultaniament.

Dinàmic: En temps d'execució, l'entorn Java es pot estendre mitjançant enllaços a clases que poden estar localitzades en servidors remots o en una xarxa.

[edita] Caracteristiques remarcables del llenguatge JAVA

  • Tipus de dades simples no orientats a objectes
  • Absencia de punters
  • Classes i objectes.
  • Herència
  • Clases abstractes
  • Interfaces
  • Programació genèrica
  • Encapsulació i polimorfisme
  • InterFaces gràfiques d'usuari
  • Gestió d'events
  • Programació concurrent
  • Excepcions

[edita] Aplicacions i Applets

  • Els programes de Java es divideixen principalment en dues categories.
    • Aplicacions: son programes autònoms independents( standalone )
    • Applets: els applets Java son programes incrustats (embedded) en una pagina HTML i s'executen en l'entorn d'un navegador Web.

[edita] Limitacions de seguretat dels Applets

  • Els applets no poden llegir ni escriure al sistema d'arxius de la computadora on s'executen.
  • Els applets nomès es poden conectar amb la computadora on estan enmagatzemats.
  • Els applets no poden executar programes de la computadora on resideix el navegador.

[edita] Eines de desenvolupament JAVA2

El JDK ve amb un conjunt d'eines que tot seguit les enumerem.

  • Compilador Java javac
  • Maquina Virtual java
  • Eina per a visualitzar applets appletViever
  • Depurador elemental jdb
  • Eina de documentació javadoc

[edita] Pasos per crear un programa en Java

  • Crear un arxiu amb el codi del programa amb extensió .java.

ex. elmeuprograma.java

  • Compilar el programa per crear l'arxiu executable (arxiu de bytecodes ) que tindrà l'extensió .class.
ex. javac elmeuprograma.java
  • Si es produeixen errors corregir-los.
  • Executar el programa amb l'interpret de bytecodes (JVM).
 ex. java elmeuprograma
  • Si el programa no funciona utilitzar el depurador per executar el programa pas a pas.

[edita] Com desenvolupar aplicacions.Entorns (IDE)

De cara al desenvolupador el Java ens aporta propietats molt interessants, la més destacable de les quals és que es multi-plataforma, o sigui que el podem fer servir des de Windows, Linux, o des del nostre mòbil per exemple.
Existeixen principalment dos entorns de desenvolupament gratuïts( IDE (Editor Integrat de Desenvolupament)) l'un es diu Eclipse, té un nivell altament professional, i ofereix una llicència d'EPL, del tipus de programari lliure.L'Altre s'anomena Netbeans també gratuit i amb llicència SPL,el podreu descarregar a la direcció http://www.netbeans.org/.

[edita] Altres projectes i eines relacionades

[edita] Programa d'exemple

Aquest programa escriu "Hola món" al dispositiu de sortida per defecte (habitualment la consola),

class HolaMon {
        public static void main (String args[]) 
        {
          System.out.print("Hola, món!");
        }
}

[edita] Enllaços externs


Llenguatges de programació
Ada | ALGOL | Assemblador | Awk | Basic| BCPL | C | C++ | C# | Clean | Cobol | Cyclone | D | Delphi | Eiffel | Forth | Fortran | Haskell | Hume | Java | Javascript | Lisp | Logo | MAGIC | Mercury | Miranda| ML | ML_Estàndard (SML) | Modula-2 | Oberon | OCaml | OpenCL | Pascal | PHP | Perl | Prolog | Python | Rexx | Ruby | Scala | Smalltalk | Altres llenguatges...