iOS Apps entwickeln – Der Einstieg

Okay, Android apps zu schreiben ist kein Problem. Man bekommt von Google alles an die Hand und kann direkt los legen, testen und seiner Kreativität freien lauf lassen. Um das ganze in den App Store zu bringen zahlt man einmalig 25$ für den Developer Account . Entwickeln kann man auf Windows, Linux und Mac.

So jetzt möchte ich eine Native iPhone App entwickeln. Ich muss dazu sagen ich bin besitze keine Apple Produkte. Also was brauch ich… Test Gerät, iPhone, iPad. Jetzt wird’s kompliziert um Apps zu entwickeln und zu testen brauch ich schon mal die Apple Store Lizenz. .. jährlich 99$ .. und zahlt man nicht mehr sind alle apps weg.. bezw nicht mehr nutzbar. Jetzt das nächste Übel. Ohne Mac keine App… Richtig gelesen. Ohne ein MacBook, iMac oder Mac Pro kann man keine Apps Entwickeln… Wtf… Also auf Community und Förderung von Entwicklern wird kein Wert gelegt. Apple ist und bleibt ein Luxus Anbieter, da wird auch kein Unterschied gemacht ob User oder Entwickler.

Danke Apple … Wieder einen Kunden zwangsrekrutiert…

Viel zu faul! Automatisierte Entwicklung.

Ich gehöre, das ist eine Tatsache und nicht mal negativ, ein verdammt fauler Mensch. Immer auf der Suche meine Ziele mit dem geringsten Aufwand zu erreichen und das Maximum raus zu holen.
Das erstrecht wenn ich programmiere. Mein privates PHP Framework aus dem Jahre 2000 ist im Grunde ein Vorlauf Model heutiger Frameworks nur leichter , kleiner und anpassungsfreundlicher.

Immer wieder erstellt man neue Tabellen in der Datenbank. Diese haben 1zu1 , 1 zu N und N zu N Abhängigkeiten sowie zwischen Tabellen. Objekte müssen geladen und gespeichert werden, gelöscht und geupdatet werden.

Und hier fängt das faul sein so richtig an. Es ist immer der gleiche Datenbank Layer und nur die Abfragen ändern sich. Objekte haben die in  der Tabelle definierten propertys und entsprechende fetter und setter.

Wennn ich beim entwickeln merke das ich Code habe der zwar in sich einzigartig ist aber doch für alles mögliche erstellt werden muss nutzte ich die Zeit zum erstellen einer Generator Lösung statt den Code selbst zu schreiben. Dieser generierte Code hat natürlich auch Nachteile. Der wichtigste, Änderungen an dem Objekt werden gelöscht beim generieren. Also werden diese im Generator gemacht. Spezifische Anpassungen werden dann in Klassen geschrieben, welche die generierten Klassen extenden. Also auch dieses Problem ist somit gelöst.

Ich kann es nur jedem Entwickler empfehlen. Werdet fauler und optimiert die Erstellung des Codes.

Keine Zeit, diese Sache mit der Zeit

Soviel möchte ich machen, soviel erreichen und alles am besten sofort.
Aktuell arbeite ich an meinem Content Management System, an der MockBot App, an der Meettube App, einem CRS, dem Minecraft-Social Plugin, einem Redaktionssystem für YouTube Trends und sicher noch ein paar anderen Dingen. Vieles liegt angefangen auf Eis und vieles Spuckt noch in meinem Kopf herum.
Natürlich alles in meiner Freizeit, den fürs Geld verdienen muss ich immer noch aus dem Haus. Wie viel würde ich wohl schaffen wenn ich diese Zeit auch noch hätte und endlich nach und nach die Projekte fertig werden würden.

Wenn… So bleibt die Masse, ein Haufen angefangener Projekte welche niemals fertig werden.

Gesamt Wert des Codes an Stunden berechnet, mehrere hundert tausend Euro. Tatsächlich aber aktuell genau 0 Euro wert.

Es bleibt nur eins , Disziplin und durchhalten. Nach und nach, Stück für Stück Projekte fertig stellen und nur nicht die Übersicht verlieren.                                                                                     
In meinem virtuellen Freizeit Büro gibt’s immer was zu tun. Selbst wenn ich nicht programmiere. Managen, Planen, Konzeption, Architektur und Prioritäten setzten. Sich selbst Abgabe Termine setzten und … als würde ich mir von so einem in meiner Freizeit was sagen lassen.. 

Erinnert mich ganz schön an meine Selbstständigkeit, nur ohne das Risiko und den Druck Geld verdienen zu müssen.

Nächste mal, Burnout durch Freizeitgestaltung?

MeetTube Android App Entwicklung auf @livecodingtv

Mal ein paar Worte zur aktuellen Entwicklung von MeetTube. Diese App hatte ich eigentlich für frühstens Ende des Jahres geplant, konnte sie aber aus verschiedenen Gründen jetzt vorziehen.

Die ganze App wird im Live Stream programmiert und das exclusiv auf Livecoding.tv, sicher nicht immer spannend aber man bekommt sehr gute Einblicke und weiß am Ende auch das sie nichts böses enthält 😉 Alle zuschau sind auch herzlich eingeladen an der Gestaltung der App teilzunehmen und Wünsche zu äußern.

Die komplette PlayListe ist hier zu finden.

UI Integration

Heute hab ich angefangen die ersten UI Elemente einzubauen.
Der Schreibtisch wird der zentrale Anlaufpunkt des Spielers.
Jeder Spieler hat sein eigenes Büro mit Schreibtisch.

Der Computer Monitor wird eine kleine Shell sein. Hier werden später mit Commandos Browser und Co aufrufbar sein. Zudem implementiert es den Teil der Wirtschaftsspionage (Hack the Boss Game)

Das Spiel nimmt Formen an.

Nach dem dritten Anlauf  ist nun beim Grundaufbau alles Stimmig. Netzwerk Funktionalität ist implementiert und die ersten Treffen von Zwei Würfeln ist realisiert.

Nun läuft das GUI auch rund, so dass die Würfel sich dann auch bald unterhalten können.

Der nächste Schritt ist die Überarbeitung der NetworkControl um die Netzwerk Charakter zu steuern. Diese basiert auf dem PlayerControl, nimmt aber anstelle von Tasten Eingaben, Netzwerk Pakete.

Anschließend werden animierte Charackter implementiert, die GUI Funktionalität hinzugefügt  und das Grundspiel ist fertig.

Dann fehlen nur noch die Spielinhalte und diese sind flexibel und erweiterbar.

Ran an den Code.