Welche Plattform sollten wir wählen - Erfahrungen gewünscht

  • Antworten:7
Carsten Ger
  • Forum-Beiträge: 10

30.04.2017, 20:10:44 via Website

Hallo an die Community.
Ich möchte gerne eine Frage los werden, die für mich sehr wichtig ist.
Ich betreibe eine kleine Firma, die einen Fußball Manager für Smartphones auf dem Markt hat.
Da ich selber kein Programmierer bin, ist es schwer für mich die richtige Plattform zu finden.
Entwickelt wurde die App als erstes (vor meiner Übernahme) in Adobe Air.
Leider ist diese Plattform nicht das goldene vom Ei (wie mir Programmierer gesagt haben) und aus diesem Grund haben wir uns dann mit anderen Programmierern zusammen gesetzt und diese haben uns wiederum Unity3D empfohlen.
Wir haben also die App angefangen in Unity3D zu programmieren, aber stecken leider fest, da wir unseren ersten Programmierer in einen besser bezahlten Job verloren haben und der zweite Programmierer das Projekt leider nicht wirklich hin bekommt.
Davon abgesehen ist Unity auch hauptsächlich für z.b. 3D Shooter geschaffen.
Wir arbeiten fast ausschließlich mit der UI von Unity und werden später höchstens mal ein 3D Gelände des Stadions mit Stadionumfeld integrieren oder eine kleine Spielsimulation.

Lange Rede, kurzer Sinn.
Wir müssen überlegen, ob wir unsere App nicht anders programmieren wollen, in einer anderen Sprache oder auf einer anderen Plattform.
Welche Plattform würdet ihr empfehlen, mit der wir sowohl für Android wie auch iOS Programmieren können, ohne jede App einzeln schreiben zu müssen ?
Wünschenswert wäre auch, wenn wir aus dem Programm auch eine Webanwendung für z.b. Facebook basteln könnten.
Davon abgesehen sollte für diese Plattform auch der Support nicht zu kurz kommen (sie sollte noch lange bestehen) und auch die Community sollte groß genug sein, um Programmierer auch im bezahlbaren Rahmen zu finden.
Mir wurde jetzt Xamarin empfohlen, aber ich kenne mich damit als NichtProgrammierer halt leider nicht aus.

Was sagt ihr dazu, bzw. was würdet ihr mir empfehlen, auf welcher Basis ich meine App programmieren könnte ?

Wie gesagt ist es ein Fußball Manager, der zur Zeit Apps für Android, iOS und Amazon bereit hält.
Der Server ist in java und mit Springframework geschrieben (Ich hoffe, ich habe das richtig beschrieben)
Die Daten werden mit dem Actionscript übergeben, da alles vorher in Adobe geschrieben wurde.

Die Frage ist halt, welches wäre das beste Programm, um nicht Nativ entwickeln zu müssen, für einen Fußball manager, der Quasi fast nur aus UI besteht.

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

30.04.2017, 21:07:47 via Website

Hallo Carsten,
wenn du jetzt XAMARIN im c#/Mono Framework angesprochen hast, damit ist das durchaus umzusetzen, wenn du keine "Spielgrafik" (3D Effekte etc...) nachher drin haben willst. Ich bin mir nicht sicher, aber da Unity3D gut mt C# fungiert, kann man da sicher einen Teil rein im XAMARIN Framework machen und ein Teil mit Unity. Dass sollten dann aber deine Programmierer wissen wie, was und warum etc.

Die Plattformübergreifende Anwendung ist gegeben, du kannst mit dem richtigen Ansatz, Android,IOS, Windows (App,Desktop,Mobile) und Linux umsetzen. Ob der Mac Mono-Pojekt unterstützt bin ich gerade überfragt.

Und dank ASP.NET kannst du in C# auch Webanwendungen + APIs bauen, hier musst du Unterscheiden, beides programmiert man in C# aber ASP.NET und Xamarin sind komplett unterschiedliche Frameworks die aber wenn gewollt aufs Mono Projekt aufbauen (und somt auch auf z.b. Linux WebServern laufen statt Windows).

Wenn du kompetente Programmierer hast, denen du auch vertraust, werden die schon das richtige tun, nehme ich mal an.

Eine Empfehlung: Lasse die Programmierer ihr Projekt aber während dem programmieren gleich mitdokumentieren, wenn dir dann jemand abspringt, dann kann jemand adseres die ARbeit einfer fortführen und braucht weniger Zeit sich einzuarbeiten.

LG Pascal //It's not a bug, it's a feature. :) ;)

swa00

Antworten
Carsten Ger
  • Forum-Beiträge: 10

30.04.2017, 21:20:26 via Website

Es muss für mich nicht zwingend Xamarin sein.
Ich wurde heute nur darauf gebracht.
Ich bin offen für weitere Vorschläge.
Programmierer habe ich dafür noch keine und muss mir dann erst welche besorgen.

Antworten
swa00
  • Forum-Beiträge: 3.704

30.04.2017, 21:50:48 via Website

Hallo Carsten,

ich kann an dieser Stelle nur aus Sicht eines Entwicklers sprechen , der hauptberuflich auf den
gängigen Plattformen sehr sehr lange seine Brötchen verdient.

Ich persönlich halte gar nichts von Cross-Plattformen wie z.b. Xamarin u.ä.

Man sollte - wenn man es vernünftig machen möchte - immer die Entwickler-Plattform wählen,
die auch vom Hersteller kommt und gepflegt wird.
Alleine in Native-Java mit AndroidStudio / Google und bei Apple erleben wir fast tagtäglich Anpassungen an neue Betriebssysteme und Neuerungen, auf die wir reagieren müssen.

.

Wenn es also Hand und Fuss haben soll und auch langlebig,fundiert & proffesionell umgesetzt werden müsste
gilt definitv die Formel :

Android = Native Java/C++ mit Android-Studio a la Google
iOS = Object C/C++ a la Apple
Server = Linux, Native C++ daeoms, Apache, SQL, PHP/PDO, JS

Es gibt bei Crossplattformen leider keine eierlegende Wollmilchsau, denn es müssen immer Abstriche in den
Funktionalitäten gemacht werden.
Man ist auch abhängig von deren Willen , sich an Neuerungen der Hersteller anzupassen.

Dabei kann es durchaus des öfteren Vorkommen , dass damit eine bestimmte Funktion nicht umgesetzt werden kann.
Im Vorfeld müsste dann alleine schon erroriert werden , was überhaupt möglich ist, und schränkt
somit die Flexibiliät der App ein - wohlmöglich gerade DIE Mehrwertfunktion.

Wenn also eine mittelfristige Investition vorgenommen werden soll, dann kann ich nur dringend empfehlen,
eine fundierte Basis anzuwenden -- und zwar so , dass der Entwickler jederzeit ausgetauscht werden kann oder muss.

Ein treffendes Beispiel habt ihr ja schon Mit Unity erleben müssen - und da seid ihr nicht die Einzigen :-)
Da klagen schon so einige Auftraggeber, die jede Menge Geld in den Sand gesetzt haben.

Abgesehen davon hat Unity3D NICHTS mit Programmieren zu tun - meine Sprösslinge arbeiten damit!

.

Ergo : Wenn du schon bereit bist, Geld in die Hand zu nehmen und es nun vernünftig machen möchtest :

Du benötigst Entwickler mit langjähriger, hauptberuflicher & fundierter Erfahrung in den oben genannten
Programmiersprachen und vor allem Praxiserfahrung

Und mit langjährig meine ich auch wirklich langjährig (> 10-15 Jahre)

— geändert am 30.04.2017, 22:43:30

Liebe Grüße - Stefan
[ App - Entwicklung ]

Pascal P.

Antworten
swa00
  • Forum-Beiträge: 3.704

30.04.2017, 22:06:24 via Website

@Pascal - Info an Dich

Unity3D : Du bist bei denen nicht einmal in der Lage , simple API Calls (z.b. Broadcasts, Alarmmanager usw) umzusetzen.
Die Jungs sind zugeschnürt, bist also auf deren Lust & Laune angewiesen.

Liebe Grüße - Stefan
[ App - Entwicklung ]

Pascal P.

Antworten
Carsten Ger
  • Forum-Beiträge: 10

01.05.2017, 10:52:04 via Website

@swa00
Erst einmal ein großes Danke für deine Ausführungen.
Das Problem, bzw. die Überlegungen sind ja immer die selben bei den Firmen.
Nimmt man eine Crossplattform, hat man die einfachere Entwicklung, muss aber mit Einschränkungen leben.
Programmiert man Nativ in den einzelnen Plattformsprachen, hat man sehr viel höhere Kosten, da man alle Apps halt 2 mal oder mehr programmieren muss.
Für eine extrem kleine Firma wie unsere, kann das auch schnell mal das aus bedeuten.
Mit der Serverprogrammierung hast du völlig recht, aber wir sprechen halt hier auch von richtig Programmieraufwand.
Unsere App ist vom Aufwand schon recht groß und da kann die Investition schon sehr schnell in die 150-200k gehen.
Aus diesem Grund muss ich mir jetzt sehr genau überlegen, was ich mache.
Dieser Wert spiegelt natürlich nur die Kosten wieder, bis zur ersten fertigen App und nicht die monatlichen Kosten danach, um die App weiter zu entwickeln etc.
Das heisst es wären alleine für iOS und Android mindestens 2 Programmierer notwendig, plus einen vernünftigen Serverprogrammierer.
Mit einer Crossplattform kann man da halt einen Programmierer einsparen, was auch erhebliche Kosten einspart.
Ob der Mehrwert der Funktionen wirklich die Kosten abdeckt, ist dabei halt die Frage, weil wir mit einem reinen UI Objekt ja das meiste gar nicht benutzen.
Selbstverständlich kann genau die fehlende Funktion genau die sein, die wir brauchen, aber die Kosten müssen halt dem gegenüber auch "vernünftig" bleiben.

Antworten
swa00
  • Forum-Beiträge: 3.704

01.05.2017, 11:30:20 via Website

Hallo Carsten,

es war mir schon klar, dass mein Vorschlag eher in Richtung Optimum ging und mit ist auch bewusst,
das eine gewisse Grenze der Investition nicht überschritten werden darf.

Wenn du allerdings bei Projekten dieser Art den spitzen Bleistift nimmst und die verlorenen Zeit incl. der
Fehlinvestition gegenüberstellst, dann wäre einmal "Richtig" wohlmöglich wirtschaftlichter gewesen.

Das heisst es wären alleine für iOS und Android mindestens 2 Programmierer notwendig, plus einen vernünftigen Serverprogrammierer.

Diese Annahme kann ich so nicht unterstützen , ich kenne alleine mehrere hervorragende Entwickler,
die gerade an diesen drei Punkten an Perfektionissmus nicht zu überbieten sind.
Mit einer langjährigen Erfahrung kommt man eh nicht drumrum.

Ich würde das sogar unterstützen solch einen Entwickler damit zu beauftragen , weil er das gesamte Konzept im Auge hat - Das erweist sich als weit weit effektiver.

Wie gesagt , ich kann nur das hier niederlegen, was ich aus der Praxis empfehlen und als Tipp weitergeben kann.

Liebe Grüße - Stefan
[ App - Entwicklung ]

Antworten
Carsten Ger
  • Forum-Beiträge: 10

01.05.2017, 12:40:01 via Website

Wenn ich das jetzt richtig verstehe, dann meinst du damit, dass ich einen Hauptprogrammierer nehmen sollte mit "langjähriger Erfahrung", der das ganze Projekt überblicken kann und die Kommunikation mit dem Team macht.
Dann wohl ein bis zwei nicht ganz so erfahrene Programmierer, die dann diesem zu arbeiten und von ihm beaufsichtigt werden.
Habe ich das jetzt so richtig verstanden ?
Mit lediglich einem Programmierer wird der Aufwand ja fast unschaffbar, in einer adäquarten Zeit, da er dann alleine den Server und mehrere Plattformen programmieren muss.
Mal so als Anhaltspunkt, was gibt man für solche Leute ca. aus ?

— geändert am 01.05.2017, 12:49:33

Antworten