Swift oder Objective C

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • zerm schrieb:

    Amin Negm-Awad schrieb:

    Wenn man mal wirklich in einer OS-X oder iOS-App ein "Performanceproblem mit Rechnen" hat, wird man in Objective-C zu C greifen und in Swift halt beten. (Ist dann aber ein sehr elegant mit Operator-Overloading formuliertes Gebet.)

    Na, es spricht doch nichts dagegen, kritische Teile in C bzw. gar Assembler zu schreiben und einfach mit dem Rest aus Swift zu verlinken?
    Genau heraus fakturieren und in eine andere Datei legen, weil ich das wegen der Performance brauche. Programmstruktur als Compiler-Flucht. Auch nicht schlecht.
    Es hat noch nie etwas gefunzt. To tear down the Wall would be a Werror!
    25.06.2016: [Swift] gehört zu meinen *Favorite Tags* auf SO. In welcher Bedeutung von "favorite"?
  • Amin Negm-Awad schrieb:

    Genau heraus fakturieren und in eine andere Datei legen, weil ich das wegen der Performance brauche. Programmstruktur als Compiler-Flucht. Auch nicht schlecht.

    Heh, ja. Ich hab das früher in meinem Obj-C Code immer so gemacht, den Kern in C++ geschrieben und UI mit Obj-C aber das war auch meiner Vorliebe für C++ geschuldet. Ist aber nicht so schlimm, wie ich finde, und vereinfacht Cross-Platform Entwicklung.

    Wir sind uns ja aber sicherlich ohnehin einig, dass Performanceunterschiede in dieser Grössenordnung für weite Teile einer Anwendung absolut unerheblich sind. Wenn man jetzt z.B. schwere numerische Berechnungen benötigt, ist es sicherlich akzeptabel, die in eine externe Library auszulagern, die man in einer anderen Sprache schreibt.

    P.S.: Gibt es eigentlich noch Shark oder vergleichbares, um Microoptimierungen vorzunehmen?
    C++
  • macmoonshine schrieb:

    zerm schrieb:

    Wenn man jetzt z.B. schwere numerische Berechnungen benötigt, ist es sicherlich akzeptabel, die in eine externe Library auszulagern, die man in einer anderen Sprache schreibt.

    ...und gerade für solche Geschichten bietet ja auch Apple entsprechend optimierte (C-) Bibliotheken an. ;)

    Ja, weiss ich doch. Cross-Platform ist aber ein Punkt, ein weiterer die Zukunftsunsicherheit bei Apple-Bibliotheken :) Und natürlich nicht für alles, was man so braucht - Min-Max-Flow Graphcuts z.B., nicht-linieare Minimierer, und ein Conjugate-Gradient schreib ich ehrlichgesagt auch lieber in C++ runter ;)
    C++
  • Ja, dieses ganze Performance-Gedöns ist in aller Regel völlig unerheblich. Sehe ich auch so.

    Aber das Apple so einen offenkundigen Blödsinn vom Stapel lässt und die Leute noch auf die Werbeveranstaltung hereinfallen …
    Es hat noch nie etwas gefunzt. To tear down the Wall would be a Werror!
    25.06.2016: [Swift] gehört zu meinen *Favorite Tags* auf SO. In welcher Bedeutung von "favorite"?
  • Amin Negm-Awad schrieb:

    Aber das Apple so einen offenkundigen Blödsinn vom Stapel lässt und die Leute noch auf die Werbeveranstaltung hereinfallen …

    Die anderen Argumente, moderner und einfacher, kann ich auch nicht nachvollziehen. Das wird ja anscheinend im Wesentlichen mit der modernen Methodenaufrufsyntax begründet, die auch schon so taufrische Sprachen wie Java, C++ oder C haben. ;)
    „Meine Komplikation hatte eine Komplikation.“
  • zerm schrieb:

    Amin Negm-Awad schrieb:

    Aber das Apple so einen offenkundigen Blödsinn vom Stapel lässt und die Leute noch auf die Werbeveranstaltung hereinfallen

    Ist es nicht das Gleiche wie iPhones oder der neue MacPro ? :P

    Das adressiert doch Endkunden. Da kennt man das mit der Marketingverarsche. Aber dass man Entwicklern so einen Quatsch andreht, …
    Es hat noch nie etwas gefunzt. To tear down the Wall would be a Werror!
    25.06.2016: [Swift] gehört zu meinen *Favorite Tags* auf SO. In welcher Bedeutung von "favorite"?
  • Amin Negm-Awad schrieb:


    Das adressiert doch Endkunden. Da kennt man das mit der Marketingverarsche. Aber dass man Entwicklern so einen Quatsch andreht, …


    Ganz einfache Rechnung. Mit Swift wird man ein paar alte Herren vergraulen. Man legt aber die Einstiegshürde niedriger, und die damit gewonnene Zahl neuer Entwickler gleicht die pampigen alten Herren locker wieder aus. Und das Marketingsprech der Keynote adressiert doch nicht die Entwickler. Das adressiert die Presse und die Shareholder. Und da ist es ja ziemlich gut angekommen.
  • Alte Herren... Ja, da muß ich mich manchmal angesprochen fühlen :)

    Habe mich mal etwas mehr mit der Sprache beschäftigt und sehe schon die vielen Fragen hier im Forum auftauchen...

    Bisher:
    warum wird meine Methode nicht aufgerufen? Lösung nach 5 Seiten Diskussion: das war ein [nil methode]

    Neu:
    wann muß ich ein ? oder ein ! hinten anhängen und warum geht das nicht wenn da ein Leerzeichen fehlt.

    D.h. ich denke die Einstiegshürde scheint kleiner, aber die Probleme beim Programmieren sind nur wo anders hin verschoben worden.

    Was wird passieren: die einen meinen dass das lt. Marketing ja das Beste ist ewas es gibt und fangen das Autofahren mit "Linksverkehr" an. Die anderen mit "Rechtsverkehr". Und werden Jahrhunderte streiten was das Bessere ist...
  • beage schrieb:

    macmoonshine schrieb:

    markusschalk schrieb:

    In diesem Zusammenhang dachte ich du meinst moderne Programmiersprachen wie bspw. C#.

    Der Wikipedia-Artikel bezeichnet C übrigens auch als modern. ;)


    Na klar ist C modern. Schon seit über 40 Jahren! ;)


    C ist bis heute auch immer noch das 1. Mittel zur Wahl wenn man einen Computer mal dafür braucht wofür er eigentlich erfunden wurde Nicht um Einkaufszettel zu schreiben oder Bunte Vögel durch die Luft zu schiessen sondern um zu rechnen. Keine andere Hochsprache hat so lange überlebt. Fortran, Cobol, Lisp, sogar Pascal sind platt. Basic gäbe es auch längst nicht mehr wenn sich nicht ein paar Urgesteine am VB festgefressen hätten.
    Wenn ich eine Software schreiben muss die schnell sein muss würde ich immer C nehmen und nur im Notfall auf Assembler zurückgreifen. Denn C hat nicht nur den Vorteil das es wesentlich leserlicher ist, es läuft auch auf verschiedenen Prozessoren und Betriebssystmen. Damals gab es nämlich auch noch was anderes als x86. Wenn man einen Code in nativem C schreibt läuft dieser auf jedem System, da es einen GNU Compiler für jedes OS gibt. Keine anderen Hochsprache kann das. (Für Java brauche ich immer noch eine runtime Umgebung, was ich von vorne herein für eine Schwachsinns-Idee halte)

    Gruß

    Claus
    2 Stunden Try & Error erspart 10 Minuten Handbuchlesen.

    Pre-Kaffee-Posts sind mit Vorsicht zu geniessen :)
  • Thallius schrieb:


    C ist bis heute auch immer noch das 1. Mittel zur Wahl wenn man einen Computer mal dafür braucht wofür er eigentlich erfunden wurde Nicht um Einkaufszettel zu schreiben oder Bunte Vögel durch die Luft zu schiessen sondern um zu rechnen. Keine andere Hochsprache hat so lange überlebt. Fortran, Cobol, Lisp, sogar Pascal sind platt. Basic gäbe es auch längst nicht mehr wenn sich nicht ein paar Urgesteine am VB festgefressen hätten.
    Wenn ich eine Software schreiben muss die schnell sein muss würde ich immer C nehmen und nur im Notfall auf Assembler zurückgreifen. Denn C hat nicht nur den Vorteil das es wesentlich leserlicher ist, es läuft auch auf verschiedenen Prozessoren und Betriebssystmen. Damals gab es nämlich auch noch was anderes als x86. Wenn man einen Code in nativem C schreibt läuft dieser auf jedem System, da es einen GNU Compiler für jedes OS gibt. Keine anderen Hochsprache kann das. (Für Java brauche ich immer noch eine runtime Umgebung, was ich von vorne herein für eine Schwachsinns-Idee halte)

    Gruß

    Claus


    Claus, Du hast meinen Smiley übersehen oder ignoriert? ;)

    Mir musst Du das nicht sagen. Ich habe über 20 Jahre lang mit ANSI-C auf Unix programmiert und ich habe es geliebt.
    Ich bin gegen Signaturen!!!