APP Entwicklung welche Sprache?

DreamGamer

Lieutenant
Registriert
Feb. 2017
Beiträge
543
Hallo, ich programmiere schon seit sehr langer Zeit und wollte jetzt richtig in die APP Programmierung einsteigen. Ich habe bisher nur eine APP zum Testen programmiert, und zwar ein ziemlich umfangreiches Klicker spiel aber nur für Android, und zwar in Android Studio. Ich habe auch Kontakt zu größeren Entwickler wie z.b. den von Clicker Heroes und er war total verwundert, als ich sagte, dass ich dies alles in Android Studio gemacht habe. Ich denke professionell macht man auch keine APPS in Android Studio. Jedenfalls meine Frage ist jetzt, welche Sprache sollte ich für die APP Entwicklung benutzen? Ein Kumpel von damals hat eine IOS APP entwickelt und hat dafür Swift benutzt. Ich möchte aber gerne eine APP Entwickeln, die ziemlich simple ist, wofür ich aber auf Daten vom Handy zugreifen muss, und zwar GPS Daten. Ich habe mich schon etwas Informiert und gesehen es gibt Möglichkeiten APPS zu entwickeln die als Windows, Android und IOS Applikation Debuggt werden können. Ich denke mal hier haben viele schon mehr Erfahrung als ich mit so etwas. Weiß einer was ich dort am besten benutzen sollte? Danke schon mal im voraus für die Antworten :)

MFG DreamGamer
 
  • Gefällt mir
Reaktionen: psYcho-edgE und GTrash81
Da ist zuerst einmal die Frage auf was - bzw- ob überhaupt - du dich spezialisieren möchtest:

iOS => Swift & XCode
Android => Java & Android Studio

Möchtest du keine Spezialisierung und eher Plattform-unabhängig programmieren (z.B. mit Xamarin Studio oder auch Unity3D) dann ist C# the way-to-go.

Zu guter Letzt wäre da noch die Unreal Engine und C++.

Meine persönliche Entscheidung war dann C#. Sowohl mit C#, aber natürlich auch mit Java und C++, kannst du auch in vielen anderen Bereichen etwas anfangen.

Das was du da vorhast (GPS, Windows, Android und iOS) klingt mir nach einem perfekten Fall für C# und Xamarin: https://blog.xamarin.com/geolocation-for-ios-android-and-windows-made-easy/
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: psYcho-edgE und GTrash81
Hi,

Für die "klassische" App-Entwicklung abseits von Spielen gibt es noch ein paar weitere (moderne) Alternativen, die nicht unerwähnt bleiben sollten:
- React Native:
React Native ist an die beliebte React-Library fürs Web angelehnt. Man kann mit JavaScript Cross-Platform-Apps schreiben, ähnlich wie bei Xamarin, beide haben durchaus verschiedene Ansätze und sicherlich beide ihre speziellen Stärken / Schwächen.
- Flutter:
Ein brandneues Framework von Google auf deren Programmiersprache Dart. Die Syntax ist gewöhnungsbedürftig (oder anders gesagt: ich mag sie nicht), allerdings kann man damit echt schnell schicke Apps hochziehen, man muss sich kaum um Design kümern, weil die Standarddesigns automatisch genutzt werden, wahlweise Googles Material Design oder eben die iOS-Designsprache (es geht sogar beides im fliegenden Wechsel).

Gegenfrage:
Was nutzen denn die Entwickler von Clicker Heroes? Finde schon, dass man Android Studio für die App-Entwicklung verwenden kann, wieso auch nicht?
Einzig, dass man den lahmen Emulator gegen den Genymotion tauschen sollte (der dafür auch Geld kostet IIRC), lese ich öfters, in Bezug auf die IDE hab ich da jetzt nicht so viele Klagen und vor allem keine Alternativen gehört.
Aber gerade für den Einstieg kann man ja gut und gerne die von den Dokus empfohlenen Tools verwenden.

Bzgl Xamarin:
Habe persönlich keine Erfahrung damit, dafür ein guter Freund.
War ja so die erste Umgebung mit der man nativen Code für alle Platformen erzeugen konnte / kann und fand es daher recht spannend.
Mein Kumpel meinte allerdings, dass nur das Xamarin Forms (?) nur für richtige Cross-Platform relevant ist, wenn das nicht flexibel genug war, mussten sie seperate Implementierungen für iOS und Android machen, da bleibe wohl nur noch der Vorteil, dass man eben nur C# / Xamarin und nicht zwei Programmiersprachen lernen muss.
Vllt kann @Flynn74 noch etwas dazu sagen?

Ich hätte React Native als bevorzugte Lösung für deine Idee vorgeschlagen, mit React Native kann man auch für Windows entwickeln.
Die aktuelle Skype-App ist meines Wissens nach in React Native geschrieben, auch wenn sie sicher kein Glanzbeispiel ist (was aber denke ich eher an Microsoft selbst liegt).
Was mobile Apps angeht hat React Native sich auf jeden Fall etabliert (https://facebook.github.io/react-native/showcase.html).

Mit Flutter können bisher keine Windows-Applikationen entwickelt werden.

Das große Problem bei den Optionen ist, dass man ganz unterschiedliche Programmiersprachen / IDEs / Ansätze / Software-architekturen hat, sodass man bei einem späteren Wechsel quasi komplett neu anfangen kann, aber es eben in meinen Augen unfassbar schwierig ist, das eine richtige Framework zu nutzen..

Viel Erfolg bei der Qual der Wahl ;)
 
Schau Dich mal rund um Cordova um...einfach mal googeln ;)

Auch Schlagwörter wie Angular, React Native etc. einfach mal bei Google reinschmeißen, das sollte schon sehr viel helfen. Wie @pcBauer geschrieben hat: Solange Du kein Spiel entwickeln möchtest, würde ich mich an die Hybride-Entwicklung halten, damit bist du heutzutage einfach viel flexibler und vielseitiger.
 
Gefragt war nach Sprache, diskutiert wird über Sprache, Entwicklungsumgebung, Frameworks

Die Antwort geht in Richtung "42" solange die Frage nicht sauber formuliert wird.

Persönlich versuche ich mich in gerade (rein aus Spaß an der Freude) in Typescript + VS Code + Angular. Macht deutlich mehr Spass als vorher Xamarin (bei dem die Dokumentation meines Erachtens das gesamte Framework entwertet), Cordova (nein, Bruder. Javascript ist keine Programmiersprache).
 
  • Gefällt mir
Reaktionen: psYcho-edgE
DreamGamer schrieb:
Ich denke professionell macht man auch keine APPS in Android Studio.
In der Spieleentwicklung mag es vllt anders sein. Aber ansonsten wird Android Studio von praktisch allen nativen Android Entwicklern genutzt, bis hin zu Google selbst für ihre internen Apps. Ich sitze da mit meinen Kollegen auch 8h am Tag vor.;)
 
  • Gefällt mir
Reaktionen: Hayda Ministral
Hallo nochmals, ich habe mir jetzt etwas Xamarin angeschaut das wäre eig. perfekt nur kann ich dort ja gar keine APP einmalig Programmieren. Ich möchte gerne eine APP einmal entwickeln und dann für mindestens IOS und Android Debuggen. Das ich nicht alles 2x Programmieren muss. Dann habe ich mir React Native angeschaut... Ich bin komplett gescheitert und habe 0 durchgeblickt. Gibt es vllt. eine Alternative oder einen Weg wie ich dies umsetzten kann? Ich möchte auch sehr ungerne eine neue Sprache lernen, weshalb meine Frage wäre gibt es eine Sprache bzw. Framework zur Entwicklung, die einer Sprache ähnlich ist die ich beherrsche oder dieselbe ist?

Danke schonmal für die Hilfe :)

Sprachen, die ich fließend kann:
HTML5 (Ist keine Sprache), CSS3, Javascript, Java, C#

MFG DreamGamer

PS: Oder hat einer eine Idee wie ich React Native vernünftig lernen kann?
 
Zuletzt bearbeitet:
DreamGamer schrieb:
Ich möchte gerne eine APP einmal entwickeln und dann für mindestens IOS und Android
Genau das kann man mit Xamarin machen. Klar brauchst Du an bestimmten Stellen plattformspezifischen Code. Aber eben nur da, wo es nötig ist. Der Rest ist Cross-Platform.
Hier mal ein GUI-Beispiel via Xamarin.Forms:
https://msdn.microsoft.com/de-de/magazine/dn904669.aspx

DreamGamer schrieb:
(Ist keine Sprache)
Wie kommst du da drauf?
 
@andy_m4 :D Das mit keine Sprache war, als Witz gemeint ^^ Und danke dir habe den Main Block komplett übersehen und nur die einzelnen Anwendungen gesehen. Weißt du zufällig, ob ich dort auch das MonoGame Framework einbringen kann oder wird? Denn ich möchte gerne 3D Objekte rein laden. Oder gibt es dort für APP Entwicklung einfachere oder bessere Wege?

MFG DreamGamer
 
Ich denke es kommt schon stark drauf an, was die APP am Ende können soll. Im ersten Post schreibst du nur was von GPS. Im letzten Post kommen dann schon 3D Objekte dazu. Beschreibe mal was du genau machen willst.
 
Die genauere Idee ist geheim ich beschreibe es mal so... Ich möchte ein 3D Model platzieren und es drehen lassen wenn sich das Handy dreht. Das ist ein Großteil davon was die APP können soll.
 
Ich bin halt nicht der größte Fan von Unity und ich möchte halt nicht das in der APP am Anfang das Unity Logo, sondern das Firmen Logo zu sehen ist. Und ich habe aktuell kein Geld um halt Unity zu kaufen. Und ich habe früher auch immer in C# mit MonoGame 3D Spiele entwickelt weil es mit damit unfassbar viel Spaß gemacht hat. Die Sache aktuell weiß ich nicht wie ich mich richtig in Xamarin einlesen soll. Ich versuche vil Source Code von anderen zu lesen und zu lernen was was bewirkt. Aber irgendwie komme ich nicht richtig vorran. Ich verstehe die Basics schon und die Datei Struktur aber noch nicht wie man richtig Objekte ausliest und neu beschreiben kann usw.
 
Udemy *hust*
new Account() schrieb:
Ich habe auch mal Udemy empfohlen, aber mittlerweile kann ich von Udemy nur noch abraten:
Ist ein ziemlich dreister Saftladen.

Ich kann Pluralsight empfehlen.
Ich habe auch öfter schon gute Tutorials gesehen, die Ausschnitte aus Udacity waren.
 
Zuletzt bearbeitet:
Gibt es vllt. auch kostenlose Möglichkeiten? Oder einfach examples wo man sich gut selber einlesen kann?
 
Ich glaube ich werde doch React Native benutzen weil dies mir einfacher erscheint als Xamarin. Und in React Native kann ich auch 3D modele rein laden. Weiß einer ob React Native leistungs-effizient ist?
 
Zurück
Oben