Java

Hikipedia
Loikkaa: valikkoon, hakuun

Java on Sun Microsystemsin kehittämä ohjelmointikieli, jonka pääasiallinen tarkoitus on luoda hitaita java-appletteja WWW-sivustoille. Java on tunnettu siitä, ettei se osaa lainkaan vapauttaa muistia; javasta kun puuttuvat kokonaan C-ohjelmointikielen malloc ja free -funktiot. Inspiraatio javan kehittämiseen syntyi kofeiinimyrkytyksestä, jonka Sun Microsystemsin ohjelmoijat saivat liiallisesta kahvin juonnista.

Sisällysluettelo

[muokkaa] Filosofia

Javan filosofia oli, että kielellä tuotetut ohjelmistot olisivat virheettämämpiä kuin C:llä tuotetut. Näin ei kuitenkaan käynyt, koska monet Javalla tuotetut ohjelmistot ovat laadultaan huonompia kuin C:llä tuotetut. Perussyy on monimutkainen arkkitehtuuri, jossa on monta erilaista hilavitkutinta ja kalikkaa sotkettu sinänsä hyvin yksinkertaiseen ohjelmaan. Esimerkiksi yksinkertainen J2EE:llä toteutettu Web-sovellus, joka toteuttaa Hello worldin, sisältää usein Hibernaten, JDBC:n, sovelluspalvelimen ja EJB-palvelimen. Koska jokainen noista on toteutettu Javalla, niistä jokainen lisää virheiden määrää huomattavasti. Lopulta Javalla toteutettu sovellus on ylläpitokelvoton paska, jota voisi verrata hyvin krapula-aamun tuotokseen. Laitteiston resurssivaatimukset ovat Java-sovellukselle huomattavan raskaat. Edellä mainituista komponenteista sovelluspalvelin ja EJB-palvelin vievät kumpikin vähintään 250 megatavua muistia ja vaativat oman prosessorinsa. Jollain vanhemmalla tekniikalla (kuten perl:illä tehdyllä CGI-ohjelmalla) vaatimukseksi riittää vanha Pentium-tasoinen kone.

Ainoa syy käyttää Javaa löytyy siitä, että Javalla tehdyt ohjelmistot eivät kaadu niin sanottuun NULL-osoitin virheeseen tai puskurin ylivuotoon. Useimmiten Java-sovellukset kaatuvat muistin loppumiseen, joka tapahtuu huomattavasti herkemmin kuin hyvin muulla ohjelmointikielellä tehdyn sovelluksen virheisiin törmääminen.

[muokkaa] Nimi

Ohjelmointikielen nimi johtuu Javan koodaajien mielikuvituksen puutteesta. Java viittaa kahviin, jota koodajat tunnetusti juovat liian suuria määriä. Tästä johtuen heidän suolistonsa lopettaa toimintansa lähellä kolmekymmenen viiden vuoden ikää. Suoliston lopetettua toimintansa koodaajat useimmiten siirtyvät joko arkkitehdeiksi tai projektipäälliköiksi. Sun kuitenkin piti heidät koodaamassa, joten he joutuivat kahvin tilalle keksimään jonkin muun piristeen. Piristeenä toimi uuden ohjelmointikielen koodaaminen, joten se sitten nimettiin Javaksi.

[muokkaa] Syntaksi

Javan syntaksia on kehuttu yksinkertaiseksi ja helpoksi oppia. Hikipedia tarjoaa esimerkin Java-ohjelmasta, joka tulostaa tekstin Hei maailma!

public final class HeiMaailma {
  public final class Message {
    private final String message;

    public Message(String message) {
      this.message = message;
    }

    public String getMessage() {
      return this.message;
    }

    public String toString() {
      return getMessage();
    }
  }

  public interface Printer {
    public void print(Message message);
  }

  public abstract class AbstractPrinterFactory {
    public static final AbstractPrinterFactory getFactory() {
      return new SystemOutPrinterFactory();
    }

    public abstract Printer getPrinter();
  }

  public final class SystemOutPrinterFactory extends AbstractPrinterFactory {
    public Printer getPrinter() {
      return new SystemOutPrinter();
    }
  }

  public final class SystemOutPrinter implements Printer {
    public void print(Message message) {
      System.out.println(message);
    }
  }

  public static void main(String[] args) {
    Message message = new Message("Hei maailma!");
    AbstractPrinterFactory printerFactory = AbstractPrinterFactory.getFactory();
    Printer printer = printerFactory.getPrinter();

    printer.print(message);
  }
}

Tallenna yllä oleva koodinpätkä tiedostoon HeiMaailma.java ja käännä se komennolla javac HeiMaailma.java. Vertailun vuoksi sama ohjelma muilla ohjelmointikielillä:

[muokkaa] Ruby

puts "Hei maailma"

[muokkaa] Python

print "Hei maailma"

[muokkaa] C

printf("Hei maailma");

[muokkaa] C++

cout << "Hei maailma";

[muokkaa] PHP

echo "Hei mailma";

[muokkaa] VB

Console.WriteLine("Hei maailma")

[muokkaa] Perl

print "Hei maailma\n";

[muokkaa] Katso myös

Henkilökohtaiset työkalut
Nimiavaruustiedot

Muuttujat
Toiminnot
Valikko
tärkeitä
foorumi
Työkalut
Muilla kielillä