Was ist der Unterschied zwischen Plattform-Unabhängig und Cross-Plattform?
Ich habe gesehen eine Menge von C/C++ - Bibliotheken und Gui-Toolkits. Unter Ihnen gibt es einige, wie GTK+ , Qt , Swing etc. die Behauptung, um die Plattform-unabhängige. Während einige , wie WxWidgets, SWT etc. die den Anspruch auf Kreuz-Plattform. Zuerst dachte ich, dass es nur eine änderung in der Formulierung, aber die Bedingungen wurden verwendet, mit einer solchen Konsistenz, dass ich angefangen habe mich zu Fragen. Was ist der Unterschied?
- Die Frage hat nichts zu tun mit der Quell-Sprache in der Bibliothek.
- Das ist Missbrauch des tag Systems. Tags sind über den Inhalt der Frage, nicht, was Sie wollen, es zu betrachten.
- Ich könnte mich irren, aber ich glaube, dass, wenn etwas behauptet, seine Plattform-unabhängige it in der Regel verwendet, eine Art virtuelle Maschine oder andere tricks, damit es funktionieren kann über die hardware-und os-Ebene. Bestimmte Installationsprogramme der vm für andere Plattformen, aber die gleiche vm für alle von Ihnen. Cross-Plattform bedeutet, dass die Bibliothek funktioniert, wie seit einer Reihe von verschiedenen Plattformen. Out of the box. Die Chancen sind, bin ich Irre oder was ich gesagt habe, braucht eine Tonne von Klarstellungen, aber ich denke, dass der Grundgedanke richtig ist...
- Ich denke, es gibt nicht viele Leute hier interessiert das minutae von Plattform-Terminologie. Und Nein, Sie können nicht. Es gibt keine C++ - Gehalt in der Frage, C++ ist überhaupt nicht relevant für die Frage.
- Sie erwähnen, Swing und Qt in ein und demselben Satz. C++ ist hier nicht relevant, da es gilt auch für Java.
- Sie sind nicht immer viele Ansichten, weil Sie nicht haben ein echtes problem zu lösen.
- Sorry für das Rollback änderungen. Und für die irrelevant-tags.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Cross-Plattform nur bedeutet, dass Sie mehrere Plattformen unterstützen. Es bedeutet in der Regel Linux, Mac und Windows. Plattformunabhängig bedeutet, dass Sie unterstützt alle Plattformen, die Ihre Sprache unterstützt - D. H., Sie hängen nicht Verhalten, dass ist nicht in der Sprachspezifikation. Aber das ist nur meine persönliche Meinung und die meisten werden nur nehmen Sie beide bedeuten "mehrere Plattformen", in der Regel "Windows-und ...".
Für das, was Ihren Wert, das ist, was Wikipedia hat in der Sache zu sagen:
"Plattform-unabhängig" wäre normalerweise ein Programm, das in einer high-level-Sprache, die brauchen nicht neu kompiliert oder angepasst für eine andere Plattform und können nur ausgeführt werden "wie Sie ist" (Java, werden die meisten Perl-Skripte, etc.) wie lange die jeweilige Plattform implementiert die language runtime. Dies ist möglich, wenn der Layer unter dem Programm, die sich mit verschiedenen Plattformen (die VM oder den interpreter).
"Cross-platform" bedeutet, dass das Programm kompiliert/angepasst für mehrere Plattformen, aber nicht für alle Plattform. Denken
#ifdef
's in C und C++ - code.Cross-Plattform bedeutet, dass Ihr Programm funktioniert auf verschiedenen Plattformen, z.B. Windows, Linux und Mac.
Plattformunabhängig bedeutet, dass Ihr code ist Write once Run Anywhere " d.h. Sie müssen nicht ändern Sie Ihren code auf verschiedenen Plattformen
Alle Plattform-unabhängige Programme sind cross-Plattform, aber Umgekehrt nicht wahr