monarchy.de - Info-B(log) http://www.monarchy.de Garantiert inhaltsfrei de-de Rangoo Wed, 30 Jun 2010 22:17:03 +0200 Typisch Männer Künne mal wieder. Ständig hat er einen frauenverachtenden Spruch auf den Lippen. Und jetzt hat er sie auch noch in digitalen Stein gemeißelt und als "Klausurvorbereitung" verkauft. Dieser Sexismus ist wirklich nicht auszuhalten. Da möchte man harmlos ein paar Dinge erklären und er baut gleich diverse Stereotypen ein. <> zum Beispiel, oder <>. Ein ganzes UML-Klassendiagramm mit Sticheleien gegen das andere Geschlecht. Und ein Sequenzdiagramm über angebliche Zicken, die Männer nur ausnutzen. Was das wieder für ein Licht auf uns Tutoren wirft...

Nach dem, was ich von der letzten Vorlesungsstunde gehört habe, wird die Klausur sehr einfach. Das soll natürlich niemanden in seinem Lernen bremsen. Ich habe den ganzen Kram schließlich schon ein paar Mal öfter gehört. Und die eine oder andere Frage scheint doch schon spezieller zu werden. Liskovsches Substitutionsprinzip und Synchronisation (niemals auf Immutables synchronisieren, wenn die verändert werden...) sollte man kennen, glaube ich. Generics sollten nach der heutigen Erklärung sogar Blondinen Männer verstanden haben.

Jetzt hoffe ich bloß noch, dass ich bei der Korrektur eine jungfräuliche Aufgabe erhalte und mich nicht nicht bei einer schon teilweise bearbeiteten dazusetzen muss. Das wäre schlimm, ich bewerte doch so gerne streng.

]]>
Wed, 30 Jun 2010 22:17:03 +0200 http://www.monarchy.de/comments.php?site=257 webmaster@monarchy.de (Rangoo)
Ein bisschen farblos
]]>
Sat, 26 Jun 2010 14:31:10 +0200 http://www.monarchy.de/comments.php?site=255 webmaster@monarchy.de (Rangoo)
Eine kleine Rotations-Daumenregel
Daher eine kleine Daumenregel für die Teil-Rotationsmatrizen, wenn man um eine beliebige Achse rotieren soll:
  • Der Kosinus steht auf der Hauptdiagonalen (altbekannt).
  • Die Achse, um die rotiert wird, hat einen 1-Eintrag (altbekannt).
  • Das Minus beim Sinus steht in der Zeile, die hinterher 0 sein soll.
  • Die Koordinate, die 0 werden soll, ist die Gegenkathete.


]]>
Sat, 05 Jun 2010 13:02:11 +0200 http://www.monarchy.de/comments.php?site=246 webmaster@monarchy.de (Rangoo)
Generics, Wildcards und Bounds
Es können zwei Arten von Typeinschränkungen (Bounds) unterschieden werden:
1. Upper Bounds (in Java durch Verwendung von "extends"): Der Typ muss der angegebenen Bound entsprechen oder eine Subklasse davon sein. Die Bound ist also in der Klassenhierarchie eine Beschränkung nach oben.
2. Lower Bounds (z.B. in Java: Box): Der Typ muss der angegebenen Bound entsprechen oder eine Superklasse dazu sein. Im Java-Beispiel wäre an der Stelle des ? der Typ Person oder die Superklasse Object möglich.

Hierbei wird der Eindruck erweckt, es sei möglich, den parametrisierenden Typen einer Klasse sowohl durch eine obere (upper) als auch eine untere (lower) Klasse in seiner Vererbungshierarchie beschränken. Dies ist nicht der Fall. Der Einsatz von Bounds bei der Klassendeklaration (public class Klasse) ist beschränkt auf Upper Bounds. Es ist also nur möglich, das extends-Schlüsselwort zu verwenden. Auf diese Weise kann die Klasse zum Beispiel sicherstellen, dass sie bestimmte Methoden an den parametrisierten Objekten aufrufen kann. [Bounded Type Parameters]

Der Einsatz des super-Schlüsselwortes in seiner hier genutzten Bedeutung ist beschränkt auf die Erstellung von Referenzen parametrisierter Klassen. Hier ist es möglich, durch Klasse k; eine Einschränkung zu erzwingen. Das benutzte ? nennt sich hierbei Wildcard. Solche Wildcards werden immer dann eingesetzt, wenn man mit parametrisierten Klassen arbeitet, von denen man sich nicht sicher sein kann, welchen Parameter sie besitzen werden.
Nötig sind solche Wildcards, weil die Auswertung von Generics statisch zur Compile-Zeit geschieht. Entsprechend muss ein Entwickler die Möglichkeit haben, die Typhierarchie weiter gefasst zu beschreiben, denn die Parameter werden auf Identität getestet. Das bedeutet, dass eine Codezeile wie Klasse k = new Klasse(); zu einem Fehler führt. Korrekt muss es Klasse k = new Klasse(); oder Klasse k = new Klasse();heißen.

Die praktischen Anwendungen für eine lower bound sind eher rar gesät. Upper bounds hingegen werden bei dynamischer Programmierung häufiger benötigt, wie schon das kurze Beispiel eben belegt. Der Fall einer upper bound wird wahrscheinlich der passendere sein.

[quote="Sun Java Tutorials"]Specifically, you learned that generic type declarations can include one or more type parameters; you supply one type argument for each type parameter when you use the generic type. You also learned that type parameters can be used to define generic methods and constructors. Bounded type parameters limit the kinds of types that can be passed into a type parameter; they can specify an upper bound only. Wildcards represent unknown types, and they can specify an upper or lower bound. During compilation, type erasure removes all generic information from a generic class or interface, leaving behind only its raw type.

]]> Wed, 02 Jun 2010 20:19:59 +0200 http://www.monarchy.de/comments.php?site=245 webmaster@monarchy.de (Rangoo) Das kann nur eine 1,0 werden
Mit der Markteinführung des iPhones von Apple rückte im Smartphone-Markt ein neuer Aspekt in Bezug auf die Nutzerbindung in den Fokus der Öffentlichkeit: Der App-Store, eine von Apple betriebene und moderierte Verkaufsplattform für Drittanbieter-Software, ermöglichte es Besitzern eines Apple-Mobilgeräts - iPhone, iPod oder iPad -, dieses mit einer Vielzahl von zusätzlichen Funktionen zu erweitern, indem sie dort entsprechende Programme herunterladen konnten.

Die Eröffnung des App-Stores ging einher mit der Bereitstellung des iPhone-SDKs, das es Entwicklern ermöglicht, auf Basis eines umfangreichen Frameworks auf die besondere Hardware zugeschnittene Anwendungen zu entwerfen. Die Idee einer explizit auf Mobilgeräte zugeschnittenen API war nicht neu, schon zuvor war auf vielen Handys die Java Micro Edition verfügbar. Der App-Store ermöglichte allerdings eine zentrale Sammelstelle für die verfügbare Software, die zudem noch bequem über das Gerät selbst erreicht werden konnte. Zusammen mit dem überwältigenden kommerziellen Erfolg des iPhones sind dies die Grundlagen, weshalb die Entwicklung von Software für Mobilgeräte in den letzten Jahren einen bedeutenden Einfluss auf die Softwareentwicklung genommen hat.

Also ganz ehrlich, wenn in den ersten zwei Absätzen meiner Diplomarbeit so oft die Wort Apple und i... fallen wie in Nuebauers halber Bachelorarbeit, kann ich doch quasi nur eine 1,0 bekommen. Eigentlich bräuchte ich gar nicht mehr abgeben als diese paar Sätze.

]]>
Sat, 29 May 2010 13:24:30 +0200 http://www.monarchy.de/comments.php?site=243 webmaster@monarchy.de (Rangoo)