Frage von Noahvh, 65

Welche programmiersprache für aufwändigere Programme und iOS Apps?

Hey,

ich habe mir vorgenommen in den Sommerferien eine neue Programmiersprache anzufangen. Mehrere bekannte rieten mir zu Java obwohl ich eigentlich immer C möchte (was aber auch keine Rolle spielt). Jetzt wollte ich eigentlich mit Java anfangen, würde aber auch gerne iOS Apps programmieren (Android ist für mich keine Option das IOS, Andorid noch um einiges überholen wird) Aber für iOS Apps wird ja Objective C oder Swift benötigt. Jetzt zu meinen Fragen:

  1. Kann man Java in Objective C (Swift) einbinden?
  2. Ähneln sich die beiden Sprachen?,und...
  3. könnte man mit beiden ein Programm entwickeln wie zB 'Summlys' (nur als Beispiel)?

Ich hoffe echt ihr könnt mir helfen, LG Noah :-)

Antwort
von wolfgang1956, 15

Kann man Java in Objective C (Swift) einbinden?

Im Prinzip schon, ist aber nach meinem Wissensstand nicht seitens Apple vorgesehen.

Ähneln sich die beiden Sprachen?,und...

Welche beide Sprachen? Bitte präzisieren! In der ersten Frage sind schon drei!! unterschiedliche Programmiersprachen genannt.

Java wurde mit völlig anderen Vorstellungen entwickelt wie Objective-C oder Swift. Auch wenn sich ein paar Keywords gleichen gibt es doch auch zahlreiche und gravierende Unterschiede. Java ist sehr statisch und Objective-C ist sehr dynamisch und hat eine völlig andere Laufzeitumgebung …

könnte man mit beiden ein Programm entwickeln wie zB 'Summlys' (nur als Beispiel)?

Im Prinzip ja, aber Javas Sicherheitskonzepte lassen vieles nicht zu, was C, C++, Objective-C und Swift zulassen … :-)

Kommentar von Noahvh ,

Also wäre es möglich ein ähnliches Programm wie Summlys mit Swift zu schreiben?

Kommentar von wolfgang1956 ,

Ja, wenn man in Swift programmieren kann … :-)

Antwort
von Orsovai, 31

Hallo,

also zunächst mal ist Java ein C-Derivat, also von C abgeleitet. Besser gesagt von C++, auch wenn sich inzwischen sehr vieles Unterscheidet. Die Konzepte sind aber sehr ähnlich.

Objective-C ist auch ein C-Derivat, ist aber vom Prinzip her C++ ähnlicher als Java.

Objective-C ist vermutlich auch nen Zacken komplizierter und gewöhnungsbedürftiger als Java, außerdem ist man sehr auf Apple eingeschränkt.

Ich persönlich würde C# lernen. Eine sehr gute Sprache, nicht ganz so schwierig wie C++ aber umfangreicher als Java.

C# ist ursprünglich eine Microsoft Sprache, aber es gibt eine Linux / Mac Implementierung names Mono, die sehr gut und weit entwickelt ist.

Mit einer Sprache kannst Du dann Apps für iOS, für Android, für OS X und für Windows schreiben. Guck Dir das einfach mal an, lohnt sich wirklich: https://www.xamarin.com

Kommentar von Noahvh ,

Ok, man kann aber doch mit Java und C so das ziemlich gleiche machen?

Kommentar von Orsovai ,

Also mit C kann man sowas schon mal gar nicht machen. Die Sprache ist dafür nicht konzipiert und denkbar schlecht geeignet.

Java ist nochmal was komplett anderes, C ist ja nicht einmal objektorientiert. Mit Java mag sowas eventuell möglich sein, C# mit Mono ist aber extra dafür gemacht! Wenn Du Dir die verlinkte Website anguckst, siehst Du irgendwo eine App für Windows Phone, iOS und Android, die 90% gemeinsamen Code nutzt. Das ist herausragend!

Antwort
von astoorangi, 41

Ganz andere Idee: Webentwicklung, also HTMl, CSS, Javascript und Php (klingt viel, aber nur die JS und Php sind Sprachen).

Die laufen zwar nicht sonderlich performant, also nicht für Spiele und co. geeignet, dafür laufen sie auf allen Plattformen (Browser) und werden in Zukunft auch wichtige Rollen spielen.

Und wenn du die in richtige/native Apps umwandeln möchtest, ist das mit Phonegap kein Problem. Das erstellt quasi eine App, in welcher im Vollbild ein Browser mit Code läuft. Mit Frameworks von Phonegap kannst du dann über Javascript auf Hardwarefunktionen (Kamera usw) zugreifen. Leider ist die Installation aber nicht gerade einfach. Und Serverkommunikation ist durch Ajax auch sehr einfach möglich, optimalerweise natürlich mit einem Php Skript.

Kommentar von Noahvh ,

Ja HTML, CSS und ein wenig PHP kann ich schon, Js könnte ich vlt. lernen. Was würdest du mir aber empfehlen, kann man Java als Vorlage für Objective C nutzen, oder würdest du mit C anfangen?

Keine passende Antwort gefunden?

Fragen Sie die Community