MacOS Anwendungen welche Programiersprache

Diskutiere das Thema MacOS Anwendungen welche Programiersprache im Forum Mac OS Entwickler, Programmierer.

  1. MAJim

    MAJim Thread Starter MacUser Mitglied

    Beiträge:
    4
    Zustimmungen:
    0
    Mitglied seit:
    12.05.2019
    So richtig werde ich noch nicht schlau.
    Programme/Apps für IOS, WatchOS und TVOS werden ja in Swift geschrieben.
    Aber in welcher Sprache werden die Anwednungen auf dem MacOS geschrieben?

    Lohnt es sich auf dem Mac Programme via Java zu entwickeln?

    Besten Dank
     
  2. thorstenhirsch

    thorstenhirsch Mitglied

    Beiträge:
    569
    Zustimmungen:
    220
    Mitglied seit:
    17.03.2015
    Willst Du etwas mit grafischer Benutzeroberfläche entwickeln, das genau so aussieht wie die Anwendungen von Apple? Dann nimm Objective-C oder Swift. Wichtig ist, dass Du die Cocoa-Bibliothek verwenden kannst, denn darin stecken die Elemente um native grafische Benutzeroberflächen für macOS zu bauen. Und das kannst Du am besten in diesen beiden Sprachen. Mit Java geht das nicht. Java hat andere Vorteile.
     
  3. MAJim

    MAJim Thread Starter MacUser Mitglied

    Beiträge:
    4
    Zustimmungen:
    0
    Mitglied seit:
    12.05.2019
    Ok da weis ich erst einmal Bescheid.
    Welche Vorteile hat Java auf dem Mac dann?

    Bin am überlegen von C# auf Java umzusatteln, daher dachte ich das Java Programme einfach auf dem Mac laufen.
     
  4. thorstenhirsch

    thorstenhirsch Mitglied

    Beiträge:
    569
    Zustimmungen:
    220
    Mitglied seit:
    17.03.2015
    Naja, sie laufen schon, wenn man Java installiert hat. Sie sehen bloß anders aus als native Anwendungen.
     
  5. electricdawn

    electricdawn Mitglied

    Beiträge:
    8.182
    Zustimmungen:
    5.436
    Mitglied seit:
    01.12.2004
    Java ist eine Kruecke. Es ist (aehnlich wie IMHO Linux) sehr gut fuer Embedded- und Server-Systeme geeignet, auf dem Desktop dagegen hasse ich Java mit Inbrunst. Es bringt sein eigenes Interface mit, das nicht konform zu irgendeinem Betriebssystem ist, und oft sind verschiedene Java-Versionen inkompatibel zueiander. Es ist mittlerweile durchaus schnell, wird aber trotzdem nie an eine native Anwendung unter dem jeweiligen Betriebssystem herankommen.

    Ganz abgesehen davon ist Java ein beliebtes Einfallstor fuer Schaedlinge.

    IMHO: Finger weg. Ausser man programmiert Anwendungen fuer grosse Firmen, die heterogen auf allen moeglichen Betriebssystemen laufen sollen and to hell with user experience.

    PS: Da Java auf den unterschiedlichsten Betriebssystemen laufen muss, bringt es auch nur ein rudimentaeres UI-Kit mit, das hauptsaechlich fuer Desktopanwendungen den kleinsten gemeinsamen Nenner bereitstellt. Weitergehende, OS-spezifische Faehigkeiten muss man dann selbst programmieren. Doppelte Arbeit IMHO.
     
  6. noodyn

    noodyn Mitglied

    Beiträge:
    10.663
    Zustimmungen:
    2.482
    Mitglied seit:
    16.08.2008
    Das kann ich voll unterstützen.
    Wenn man schon als Zielplattform MacOS im Auge hat, sollte man aktuell Swift als Sprache wählen... oder halt das ältere Objective-C.
     
  7. MAJim

    MAJim Thread Starter MacUser Mitglied

    Beiträge:
    4
    Zustimmungen:
    0
    Mitglied seit:
    12.05.2019
    Also empfehlt ihr mir für die Windows Welt C# zu nutzen und auf dem Mac dann Swift?
     
  8. xentric

    xentric Mitglied

    Beiträge:
    3.887
    Zustimmungen:
    696
    Mitglied seit:
    11.05.2007
    Z.B. Das wären die aktuell gängisten Optionen imho.

    Falls dus eher ein Level darunter magst, gibt es wie schon erwähnt auch Obj-C für OS X (mit Cocoa) oder C++/WinRT für Windows. Oder Visual Basic mit Winforms/WPF/UWP oder WinAPI (MFC,ATL). Ich hab gerade wirklich wirklich noch die WinAPI rausgekram und bin über die 6 MB Memory usage die meine Anwendung nimmt sehr erfreut.

    Alternativ gibts auch cross platform C++ GUI Frameworks die nicht ganz so Scheiße aussehen wie Swing (z.B. Qt). JavaFX hab ich noch nie in echt gesehen, ist vielleicht auch sonst mal eine Googlesuche wert. Für F# gibts auch WPF Bindings.
     
  9. MAJim

    MAJim Thread Starter MacUser Mitglied

    Beiträge:
    4
    Zustimmungen:
    0
    Mitglied seit:
    12.05.2019
    Ok Mac und Swift ist definitv fest.
    Bei Java bin ich gerade hin und hergerissen, wenn ich Java auf Windows einsetze, könnte ich mit ein wenig Anpassung doch auch Android App machen.
     
  10. electricdawn

    electricdawn Mitglied

    Beiträge:
    8.182
    Zustimmungen:
    5.436
    Mitglied seit:
    01.12.2004
    Das würde schon gehen, man muss aber immer bedenken, dass man den Leuten dann aufzwingt Java auf dem Rechner zu installieren. In der heutigen Zeit der Schnell-ausprobiert-und-weg-Programme dürfte das nicht gerade ein positives Werbesignal sein.
     
  11. xentric

    xentric Mitglied

    Beiträge:
    3.887
    Zustimmungen:
    696
    Mitglied seit:
    11.05.2007
    Ein wenig Änderung? Zwischen einer Desktop App und einer Mobile-App?
    C# ist schon echt fein für Desktop. Wurd kontinulierlich weiterentwickelt, die Doku ist mit Abstand die Beste die ich je gesehen hab (MSDN). Kein Vergleich zu der Java, Spring, etc.-Grütze.

    Von Mobile hab ich keine Ahnung. Aber da gibts ja auch cross platform (z.B. auch mit C# und mono). Wie schlecht (hacky) das ist, und was das wirklich alles kann, kann ich nicht sagen.
     
  12. Hausbesetzer

    Hausbesetzer Mitglied

    Beiträge:
    10.611
    Zustimmungen:
    2.628
    Mitglied seit:
    10.09.2008
  13. thorstenhirsch

    thorstenhirsch Mitglied

    Beiträge:
    569
    Zustimmungen:
    220
    Mitglied seit:
    17.03.2015
    Nee. Apps werden ganz anders programmiert als Windows-Anwendungen. Überleg doch mal: eine Windows-Anwendung willst Du mit der Maus bedienen, eine App auf dem Handy hingegen mit den Fingern. Mit den Fingern kann man super wischen, aber versuch das mal mit der Maus! Total Banane, also programmierst Du schon mal ganz unterschiedliche Möglichkeiten für Deine User zu interagieren. Dann der Formfaktor: Handy hochkant, Desktop quer. Am besten gleich responsive programmieren, denn Handys kann man natürlich auch quer halten. Und von den unterschiedlichen Bibliotheken, build tools und Vertriebswegen will ich gar nicht erst anfangen.

    Wenn Du trotzdem versuchen willst, mit einem Technologiestack beide Welten (Desktop+Mobile) abzudecken, dann nimm einen ganz anderen: Javascript oder Typescript als Sprache und React als Bibliothek. Das ist eigentlich für Webseiten/Webapps, aber das lässt sich mittlerweile auch (fast ohne Anpassungen) als Desktop-Anwendung paketieren. Du hast dann natürlich die gleichen Nachteile wie bei Java-Anwendungen.
     
  14. xentric

    xentric Mitglied

    Beiträge:
    3.887
    Zustimmungen:
    696
    Mitglied seit:
    11.05.2007
    Keine GUI. WPF/UWP ist auf DirectX basierend, nicht cross-platform. Außerdem ist es "Bestandteil" vom .NET Framework, nicht .NET core welche das C# ist, welches seit einigen Jahren cross platform ist. Es gibt auch hier einige cross platform UI Toolkits, aber die sind nicht von Microsoft, oder sonstigen größeren Anbieter sondern von 2-4 Leuten die Ihre Freizeit da reinstecken.
     
  15. Roman78

    Roman78 Mitglied

    Beiträge:
    2.386
    Zustimmungen:
    798
    Mitglied seit:
    02.10.2006
    Java ist auch keine Programmiersprache sondern eine Krankheit.

    Cool, ich wusste gar nicht, dass es VS auch für Mac gibt. Damit habe ich unter Windows schon mal Programmiert.

    Ich habe auch mit Lazerus Programmiert, allerdings auch nur auf Windows, aber es gibt auch eine Mac Version. Scheint allerdings nur 32-Bit zu sein.
    https://www.lazarus-ide.org/
    http://wiki.lazarus.freepascal.org/Portal:Mac

    Dies habe ich genutzt weil ich in der Schule damals mit Pascal und Delphi programmiert habe und Lazerus hier ein Abkömmling ist.
     
  16. Hausbesetzer

    Hausbesetzer Mitglied

    Beiträge:
    10.611
    Zustimmungen:
    2.628
    Mitglied seit:
    10.09.2008
  17. xentric

    xentric Mitglied

    Beiträge:
    3.887
    Zustimmungen:
    696
    Mitglied seit:
    11.05.2007
    Das hatte ich ja schon erwähnt, mit Mono (i.e. Xamarin) in meinem Kommentar oben drüber.

    Ist kein WPF/UWP, also nicht nativ von MS kommend, nicht ursprünglich für Desktop entwickelt, sondern Mobile first. Aufgekauft (kleiner Laden). Evlt hatte ich das so ausdrücken sollen.

    Wie gut die Desktopuntersützung da ist, kann ich nicht sagen. Nie probiert. Ist aber auf jeden Fall anders als C# mit WPF/UWP, und ganz sicher von der Doku her. Das hatte ich selbst ausprobiert vor 3 Jahren (als es noch nicht zu MS gehörte) und aufgegeben. Kann sein dass das mitlerweile besser ist.

    Edit: Und wenn wir schon dabei sind. Das Visual Studio für Mac ist nicht DAS Visual Studio, sondern MonoDevelop. Da ist ein Meilenweiterunterschied.
     
  18. uwolf

    uwolf Mitglied

    Beiträge:
    518
    Zustimmungen:
    15
    Mitglied seit:
    26.09.2006
    Ich habe sowas (Windows, macOS) mit Xojo gemacht. Läuft gut, sieht nativ aus, kaum platform abhängig. Gute Doku und Tutorials.

    Du kannst es runterladen und damit spielen, wenn du aber Programme ohne IDE laufen lassen willst, dann kostet es.

    Geht auch für iOS und Android, damit habe ich aber keine Erfahrung.
     
Die Seite wird geladen...
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite weitersurfst, akzeptierst du unseren Einsatz von Cookies. Akzeptieren Weitere Informationen...