Passend zum morgigen offiziellen Verkaufsstart des iPhone 4 hat electrobeans eine Übersicht der neuesten Reviews erstellt. Es handelt sich natürlich um englischsprachige Artikel. Damit ist auch klar ist, welches Land die Testgeräte bevorzugt erhalten hat. :-)
iOS 4 seit heute erhältlich
Sofern Ihr nicht hinter dem Mond lebt, wisst Ihr es sicher bereits: iOS 4 ist für den iPod Touch und das iPhone (3GS und 3G) seit heute verfügbar.
Eine Übersicht der Änderungen und direkte Downloadlinks findet Ihr zum Beispiel bei
Macnotes
fscklog
iPhoneBlog
MacLife
Update: Lesenswert ist auch das wie gewohnt umfangreiche (englische) Review zu iOS 4 bei ars technica.
DevTipp 5 – CoreData SQL Debug
CoreData ist in der Mac und iPhone-Entwicklung das ORM-Werkzeug der Wahl. Objekte lassen sich damit ohne einer einzigen Zeile SQL in der darunterliegenden relationalen Datenbank speichern und auch wieder auslesen. CoreData generiert dabei natürlich fleissig weiterhin SQL-Code und den kann man sich sogar ausgeben lassen. Wer sehen möchte, was im Hintergrund passiert muss lediglich ein Argument an die ausgeführte Anwendung übergeben. Dazu öffnet man in Xcode 3.2 über das Projektmenü die Eigenschaften des aktiven Executables und dann den Reiter Arguments und fügt das Argument -com.apple.CoreData.SQLDebug 1 (inkl. Bindestrich) zur Aktivierung des SQL-Debugs hinzu.
Der SQL Output wird daraufhin direkt auf der Debugkonsole ausgegeben.
Erste Einblicke in Xcode 4
Apple hat auf der WWDC eine erste Preview von Xcode 4 verteilt. Sofern Ihr kein glücklicher Teilnehmern der Konferenz wart, könnt Ihr nun bei Apple Insider einen Blick auf die neue Oberfläche und Features werfen.
Jeff LaMarche zeigte sich in seinem Resumee der WWDC jedenfalls äußerst beeindruckt von der neuen Version. Der Ansatz, den Interface Builder und Editor unter einem Dach zusammenzufassen, sieht vielversprechend aus. Mich jedenfalls nervt es, zwei Tools gleichzeitig geöffnet haben zu müssen.
Wer sich näher informieren möchte, kann dies über die zwischenzeitlich erhältlichen Videos der diesjährigen WWDC in Angriff nehmen und sich damit die Wartezeit auf einen Download für nicht-privilegierte Entwickler ein wenig verkürzen. Wann Xcode 4 verfügbar sein wird, ist bislang noch nicht bekannt.
(via Apple Insider)
Lesestoff für Entwickler
stackoverflow.com ist für mich eine häufige Anlaufstelle auf der Suche nach Antworten. Die Datenbank umfasst eine reiche Auswahl zu vielen Themen und Programmiersprachen. In diesem Zusammenhang könnt Ihr auch mal einen Blick auf die kostenlos verfügbare App werfen, die die (mobile) Suche erleichtert.
Eine weitere Informationsquelle sind Bücher und so passt es gut, dass sich bei stackoverflow eine Liste frei verfügbarer eBooks zu C, Objective-C, C++, C#, Java, Perl, Python, PHP und weiteren Sprachen findet. Viel Spaß beim Stöbern!
(via Hacker News)
Zwei Schritte vor, einen zurück
So ähnlich scheint derzeit Apples Strategie hinsichtlich der Änderungen ihrer Lizenzbedingungen für die Teilnahme am Entwicklerprogramm für iOS zu sein. Ihr erinnert Euch an die Änderungen für Bibliotheken, die zu Werbezwecken Geräteinformationen an die Anbieter verschicken?
Dann ist Euch sicherlich auch nicht die Änderungen des Abschnitts 3.2.2 entgangen, die unter anderem Adobes Flash als Plattform für Apps ausgeschlossen haben:
No interpreted code may be downloaded or used in an Application except for code that is interpreted and run by Apple’s Documented APIs and built-in interpreter(s).
Im Rahmen der WWDC hat Apple die Bedingungen ein wenig gelockert:
Unless otherwise approved by Apple in writing, no interpreted code may be downloaded or used in an Application except for code that is interpreted and run by Apple’s Documented APIs and built-in interpreter(s). Notwithstanding the foregoing, with Apple’s prior written consent, an Application may use embedded interpreted code in a limited way if such use is solely for providing minor features or functionality that are consistent with the intended and advertised purpose of the Application.
Matt Drance von Apple Outsider vermutet, dass mit dieser Öffnung vor allem die Spiele-Entwickler unterstützt werden sollen, da nun der Einsatz häufig verwendeter Skriptsprachen wie z.B. Lua wieder möglich ist.
Klingt für mich plausibel und nachvollziehbar, aber ich frage mich, ob Apple nicht vor einer Änderung der Lizenzbedingungen über die Konsequenzen nachdenkt? Oder ist es Apples Strategie, eine klare Grenze nach und nach wieder aufzuweichen? Das wäre angesichts der schlechten Presse (vor allem im Hinblick auf den Ausschluß von Adobe’s Flash) schon verwunderlich.
Vielleicht hat Onkel Steve ja auch einfach nur über sein iPad direkten Zugriff auf die Bedingungen und ändert sie nach Lust & Laune ab…
Kaum ist er dann im Urlaub, müssen die Änderungen quasi geresteved werden. :-)
(via Apple Outsider)
WWDC 2010 Videos bereits verfügbar
Setzt Euch besser hin, denn jetzt kommt ein Kracher, der aktuell gerade durch den Twitter-Ticker rattert:
Die WWDC ist noch keine Woche beendet und schon sind die Videos der einzelnen Vorträge in HD und SD über iTunes verfügbar. Dauerte es letztes Jahr noch 2 Monate und in den Jahren zuvor noch länger, hat sich Apple diesmal selbst übertroffen. Und es kommt noch besser: Die über 100 Videos stehen allen registrierten Apple-Entwickler kostenlos (!!!) zur Verfügung.
Ich kann jedem Entwickler die Videos nur ans Herz legen, denn hier findet man hochwertige Vorträge mit vielen Informationen und Beispielen. Offen gesagt waren sie meiner Meinung nach auch locker die Investition der paar Hundert Dollar mehr als wert. Aber schließlich verdient Apple genug Geld mit uns, da können sie auf die paar zusätzlichen Einnahmen sicher gut verzichten.
Mehr Informationen zu den einzelnen Sessions und der zugehörige Sourceode sind ebenfalls verfügbar.
DevTipp 4 – Objekte clonen
Ein Objekt zu kopieren klingt nach einer simplen Aufgabe. Objective-C enthält allerdings keine eigenen Sprachkonstrukte, um unabhängige neue Objektinstanzen mit den indentischen Eigenschaften eines bestehenden Objekts zu erstellen. Allerdings enthält die universelle Basisklasse NSObject bereits eine Methode copy, die auf Klasseninstanzen aufgerufen werden kann. Die copy-Methode selbst ruft allerdings eine weitere Methode auf, die dem NSCopying-Protokoll folgt. Kopierfähige Klassen müssen also zwingend dieses Protokoll implementieren.
Im Header-File der Klasse wird das Protokoll angegeben:
@interface eineKlasse : NSObject <NSCopying> {
...
}
Im Implementierungsteil muss lediglich die Methode copyWithZone implementiert werden, die sich um das Kopieren des Objekts kümmert und als Ergebnis eine neue Objektinstanz zurückliefert:
- (id) copyWithZone: (NSZone *) zone
{
eineKlasse *aCopy = [[self class] allocWithZone: zone];
// Hier folgene weitere Zuweisungen der Eigenschaften vom Original-Objekt an die
// Objektkopie
// aCopy.aParameter = self.aParameter
return aCopy;
}
Die Methode muss selbst dafür sorgen, das alle benötigen Objekteigenschaften des Originalobjekts an die Eigenschaften der erzeugten Kopie weitergegeben werden. Jetzt können Objekte mit der copy-Methode erzeugt werden.
Der Übergabeparameter vom Typ NSZone (in diesem Fall immer nil) beschreibt einen Bereich im Speicher, auf dem das neue Objekt allokiert werden soll. Bei nil wird automatisch der Standardbereich verwendet.
iPad-Apps
Mehr als 20.000 iPad Applikationen sind derzeit im App Store verfügbar und täglich werden es mehr. Zwar klingt die Anzahl im Vergleich zu den vorhandenen iPhone Apps eher gering, aber einfacher ist es trotzdem kaum, die Spreu vom Weizen zu trennen.
Gerne greife ich dann auf Seiten zurück, die eine Vorauswahl treffen und einem die Auswahl erleichtern oder auf echte Highlights hinweisen, die sonst im App-Dschungel untergehen.
Eine solche Übersicht gibt es bei iPad Apps That Don’t Suck. Endlich mal eine URL, die man sich merken kann.
Dasselbe in grau gibt es auch für Hintergrundbilder:
iPad Wallpapers That Don’t Suck
Welche Seiten helfen Euch bei der Auswahl?
Open Source Apps
Es ist sicher kein Geheimnis, dass die Analyse fremden Sourcecodes nicht nur interessant sondern auch lehrreich sein kann. Im iPhone Umfeld gibt es überraschend viele Open Source Projekt und ManiacDev.com hat sich die Mühe gemacht, 35 davon in einer Liste zusammenzustellen, die namenhafte Apps wie z.B.
enthält. Werft mal einen Blick darauf, es schadet sicher nichts.





