Seiten

Donnerstag, 24. März 2011

Java Script? 24-03-2011

Nungut, heute habe ich mich zwar auch noch um andere Dinge gekümmert, darunter auch einige tests der bereits geschriebenen Software auf Lauffähigkeit, aber Aufgrund des Wunsches zu einer entsprechnenden Verwendung auch mit Java Scrpit.

Ich glaube es bereits erwähnt zu haben, dass die für den Browser entwickelte objektorientierte Programmiersprache Java Script nichts mit Java, der anderen nicht für Browser entwickelten Programmiersprache zu tun hat und früher einmal Mocha hieß. Aus unerfindlichen Gründen ( vermutlich um Verwirrung zu stiften ) wurde sie aber umbenannt.

Ganz egal. Mit Java script lassen sich tolle Sachen machen. Zum Beispiel sowas, oder auch sowas.
Ganz besonders angetan haben es mir aber sachen wie dies oder das.

Jeder, der mit tollen Effekten punkten möchte, seine Seiten aufhübschen oder einfach nur aus pragmatischen Gründen funktioneller machen will, kommt an Java Script einfach nicht vorbei.

Nun ein paar worte zur Technik:
Java Scrpit verwendet ein schwache typisierung ähnlich der von PHP, allerdings werden hier die Variablen nur einmal mit dem Befehl var deklariert und können nachher ohne spezielle Markierung ( $ ) alleine weiterleben.
Sie haben wie in php keinen festen Datentypen und können diesen währen der Laufzeit wechseln.

Dann werden in Java Script Objekte auf andere weise erzeugt als in PHP. Java Scrpit unterstützt das mir noch etwas mysteriöse Prototyping, bei dem Objekte nur aus bereits bestehenden Objekten "geklont" werden. Was aber nun der Unterschied zur Vererbung in PHP ist ist mir unklar. Neue Objekte sind meines Wissens auch nicht vollkommen jungfräulich sondern haben alle zumindest den Typ Objekt.

Nun mehr darüber auch ein andermal.

Mittwoch, 23. März 2011

Multithreading 23-03-2011

So Threads in der Informatik unterscheiden sich natürlich etwas von der direkten Übersetzung und haben mit Handarbeiten nichts zu tun.

Was ist also ein Thread? Laut Wikipedia ein:" Ausführungsstrang oder eine Ausführungsreihenfolge in der Abarbeitung eines Programms". Nun was bedeutet das?
Wie die meisten Computerbenutzer festgestellt haben sollten ist, das während sie mit Ihren Computern arbeiten nie nur ein Programm oder eine Anwendung auf einmal läuft. Das merken vor allem Leute wir ich, die neben der Grafikbearbeitung gerne surfen und Musik hören. Tja das wiederspricht aber eigentlich der Architektur des Computers, die vom Prinzip her darauf ausgelegt ist, nur einer Sache gleichzeitig zu tun, bzw. nur ein Programm auf einmal auszuführen.

Damit man aber während der Ausführung eines Programmes noch etwas anderes mit dem Computer machen kann musste eine Lösung gefunden werden, bei der mehrere Prozesse "gleichzeitig" laufen.

Trauriger weise ist das numal nicht möglich. Also was nun. sicher habe die meisten User ebenfalls festgestellt, dass ihre Rechner ziemlich schnell sind ( was Rechenvorgänge angeht ). Der Prozessor, das Herz des Computers übernimmt dabei die ganze Arbeit und "rechnet" je nach Architektur unterschiedlich schnell. Erst die ungeheure Geschwindigkeit mit der er das Tut macht z.B. die Darstellung eines Interfaces auf dem Bildschirm möglich macht.
 Um also die Gleichzeitigkeit verschiedener Anwendungen zu ermöglichen müssen diese Aufgeteilt und bei jedem in sehr kurzen Intervallen weitergerechnet werden. Wird zum Beispiel die Maus bewegt " quetscht " der Prozessor etwas Rechenleistung dazwischen und berechnet die neue Position der Maus auf dem Bildschirm, während der ganze andere "Kram" läuft. Das ist die "Synchronizität" der von Neumann Architektur.