Welche Programiersprache soll ich lernen?
Im beruflichen Umfeld programmiere ich viel, allerdings in einer internen Programmiersprache, die sich bei Java, C++ und vor allem C# bedient.
Nun möchte ich eine App entwickeln,
- die für Android und iOs nutzbar ist.
- bei der eine Datenbank zugrunde liegt.
- bei der die Daten sollen auch in einer Cloud abgelegt werden können.
- Es soll auch Standortbestimmung via GPS möglich sein.
- Anbindung an Repository-Verwaltubg wie Github (auch nachträglich) wünschenswert.
Welches ist für diese Anforderungen die richtige Progammiersprache? Lohnt es sich, tiefer in C# einzutauchen oder setze ich auf's falsche Pferd?
Welche Programmiersprachen kämen noch in Frage?
Vielen Dank für die Beratung.
3 Antworten
Es lohnt sich ganz sicher für dich, tiefer in C# einzutauchen.
Die Sprache/.NET hat sich weit verbreitet und wird stetig weiterentwickelt. .NET selbst bietet viele interessante Möglichkeiten, um Anwendungen für verschiedene Zielplattformen zu entwickeln (ob nun für mobile Endgeräte oder Web). Dein Vorhaben kannst du entweder mit .NET MAUI oder (als Webapplikation) mit ASP.NET/Blazor umsetzen.
Für einen Standortzugriff gibt es eine Geolocation-Schnittstelle. Für die Kommunikation mit einer Datenbank kannst du auf das Entity Framework (ORM) oder Konnektoren/Client-Bibliotheken (wie MySql.Data) aus NuGet zurückgreifen.
(...) bei der die Daten sollen auch in einer Cloud abgelegt werden können.
Schau dir dafür den konkreten Cloud Provider an. Er muss eine Schnittstelle/API zur Verfügung stellen. Die kannst du dann mit C# ansprechen.
Anbindung an Repository-Verwaltubg wie Github (auch nachträglich) wünschenswert.
Du kannst jeden beliebigen Ordner auf deinem Rechner zu einem Git-Repository machen. Eine Einschränkung bei einem Upload auf GitHub hast du lediglich ab einer bestimmten Dateigröße.
Welche Programmiersprachen kämen noch in Frage?
Eine Auswahl:
- C++/QML (mit Qt)
- Dart (mit Flutter)
- Java oder Kotlin (mit Codename One)
- JavaScript (mit React Native)
Andernfalls kannst du für jede Plattform auch eine separate, native App entwickeln (Android: Java/Kotlin, iOS: Swift) oder mit Webtechnologien eine Webanwendung/PWA erstellen.
"die für Android und iOs nutzbar ist"
du hast 2 Möglichkeiten:
eine native App mit Java (kotlin) und swift zu machen, das heißt du musst die App 2 mal schreiben.
oder
eine hybrid App mit react native oder flutter zu machen, das heißt du musst nur einmal den Code schreiben und es wird für Android und iOs funktionieren.
...
du kannst schon Java, dann wird die Android Entwickelung einfacher für dich, aber du musst swift lernen (um eine iOs App zu machen) 😅
react native vs flutter?
react native: du musst nur javascript und React können
flutter: du musst die Programmiersprache Dart lernen.
ich glaube du kannst jetzt entscheiden..
Also: als absoluter only-javascript developer würd ich jetzt natürlich javascript mit dem electron framework sagen 😅. Weiß jetzt aber natürlich nicht, was du von javascript hältst. Der Vorteil ist halt, dass du eine datenbank dann ganz einfach mit firebase intigrieren kannst.
Mfg
Stimmt, war am Abend etwas blöd unterwegs. Ja, keine Ahnung. Ich hab das immer anders gemacht 😅. Baue aber auch nicht wirklich viele mobile ios desktop apps, sondern habe meine eigenen Projekte
Verwechsel auch immer oft alles. Hab schon zu oft react statt electron gesagt, weil die Logos und der use “basically” identisch sind. Ausserdem sind die Logos leicht zu verwechseln
komisch dass du React native nicht gesagt hast 😅