Hier gibt es keine wirklichen Vor- oder Nachteile, zumindest keine, die einen Programmierer, der sich in einer Sprache wohlfühlt, dazu zwingen sollten, die andere zu verwenden.
Leistung sollte kein Problem sein. Wenn Sie ein guter Obj-C-Programmierer sind, ist es unwahrscheinlich, dass Sie in den inneren Schleifen eine schwere Übung mit viel Messaging schreiben, was bedeutet, dass Sie diese inneren Schleifen wirklich in C schreiben werden Level-Programmierer, es besteht die Möglichkeit, dass das schwere Heben von den Bibliotheken durchgeführt wird, die Sie ausgewählt haben, um dies ebenfalls aufzuschieben, und Sie sind dem ausgeliefert, was auch immer sie tun.
Portabilität ist ein echtes Problem, wenn Sie sich darum kümmern. Wenn nicht, dann meh. Plattformübergreifend zu sein ist nicht das Ende von allem. Ein erster Erfolg wäre schön :) Sie können später immer portieren. Wenn Sie ohnehin nicht sorgfältig planen, ab Tag 1 plattformübergreifend zu sein, werden Sie mit der gleichen Sprache nicht weit kommen: Es gibt viele weitere echte Unterschiede zwischen Plattformen, die angesprochen werden müssen.
Das Projekt abzuschließen ist wichtiger als sich über die Technologie zu ärgern. Wenn Sie in Obj-C produktiver sind, bleiben Sie in Obj-C.
Meine Vorliebe? Ich bin ein C ++ - Typ. Ich mag Obj-C ganz gut, aber ich bin glücklich , in C ++, und ich tue Schreib Cross - Plattform - Code.