Wurde Apple in C++ programmiert?
-
Hi,
Ich habe gehört Apple Mac OS ist in C++ programmiert, stimmt das?
Außerdem habe Ich gehört Windows ist angeblich in C programmiert, aber ich frage mich wieso sie das nicht mit C++ gemacht haben? Das gabs doch auch schon als Windows entwickelt wurde oder nicht? C++ ist doch viel neuerer als C. Wird denn Windows 7 in C++ gemacht sein?
danke
-
Freezer- schrieb:
Ich habe gehört Apple Mac OS ist in C++ programmiert, stimmt das?
Der Kernel von OS X ("Darwin") basiert auf BSD und ist vermutlich in C geschrieben. Das dürfte sich leicht herausfinden lassen, da das Ding quelloffen ist.
Für den Rest soll AFAIK Objective-C benutzt worden sein. Das läge nahe, weil Cocoa auch primär eine ObjC-Schnittstelle ist.
Freezer- schrieb:
C++ ist doch viel neuerer als C. Wird denn Windows 7 in C++ gemacht sein?
C++ findet in Windows mittlerweile durchaus Verwendung (jedenfalls außerhalb des Kernels). Die überarbeiteten Systemprogramme wie der Explorer sind sicherlich nicht in C geschrieben, vor allem, weil COM in C nochmals deutlich unangenehmer ist als in C++.
-
Es gibt auch Betriebssysteme die in C++ entwickelt werden, da wäre zum Beispiel L4.
-
Freezer- schrieb:
Außerdem habe Ich gehört Windows ist angeblich in C programmiert, aber ich frage mich wieso sie das nicht mit C++ gemacht haben?
warum sollten sie? vorteile hätte es ja keine.
soll das hier der neue c++ flamethread werden?
-
%fricky schrieb:
Freezer- schrieb:
Außerdem habe Ich gehört Windows ist angeblich in C programmiert, aber ich frage mich wieso sie das nicht mit C++ gemacht haben?
warum sollten sie? vorteile hätte es ja keine.
soll das hier der neue c++ flamethread werden?Naja, es würde um Größenordnungen stabiler als in C laufen, weil man eine geordnete Fehlerbehandlung mit Exceptions hat und keine Ressourcenlöcher wegen der Destruktoren. Durch die erhöhte Übersicht mancht man weniger Fehler und das senkt dei Entwicklungskosten. Außerdem kann man dadurch besser optimieren, was die Sache Ressourcensparender zur Laufzeit macht.
-
volkard schrieb:
Naja, es würde um Größenordnungen stabiler als in C laufen, weil man eine geordnete Fehlerbehandlung mit Exceptions hat und keine Ressourcenlöcher wegen der Destruktoren. Durch die erhöhte Übersicht mancht man weniger Fehler und das senkt dei Entwicklungskosten. Außerdem kann man dadurch besser optimieren, was die Sache Ressourcensparender zur Laufzeit macht.
du hast damit alle standard-argumente aufgeführt, die c++'ler immer anbringen, liest sich wie so'n werbe-flyer. nun könnte man sich jeden punkt vornehmen und zeigen, dass es im grunde nicht so ist, wie's scheint, aber dann hätten wir hier ratz-fatz wieder 30 seiten hickhack, was letztlich zu nichts führt.
-
Außerdem habe Ich gehört Windows ist angeblich in C programmiert, aber ich frage mich wieso sie das nicht mit C++ gemacht haben?
Haben sie doch. Ihr solltet euch mal drüber klar werden, was ihr mit "Windows" eigentlich genau meint.
Da gibt's noch Fragen dieser Art:
Warum haben sie ein paar unausgewachsene Scriptsprachen dazugegeben (VBS, JScript, cmd.exe), und sie dann selbst kaum verwendet?
Wir haben ja im letzten Flame-Thread mit Volkard den Konsens erreicht, daß wir behaupten dürfen, daß C++ deshalb so kompliziert ist, weil es OOP-Geschichten auf eine statische Typisierung anwenden und viele Dinge zur Compilezeit abarbeiten will.Wenn ich Windows gebaut hätte, hätte ich viele der Konfigurations-Sachen mit einer einfacheren dynamischen Sprache gemacht.
Oder zumindest einen C-Compiler mitgeliefert...
-
mngbd schrieb:
Oder zumindest einen C-Compiler mitgeliefert...
Die EU hätte ihre Freude
-
mngbd schrieb:
Wenn ich Windows gebaut hätte, hätte ich viele der Konfigurations-Sachen mit einer einfacheren dynamischen Sprache gemacht.
Oder zumindest einen C-Compiler mitgeliefert.stimmt, früher waren wenigstens noch qbasic bzw. gwbasic dabei. aber heute haste ja .NET auf jeder windoof-kiste und da ist bestimmt auch ein C#-compiler mit drauf. oder etwa nicht?
-
mngbd schrieb:
Wir haben ja im letzten Flame-Thread mit Volkard den Konsens erreicht, daß wir behaupten dürfen, daß C++ deshalb so kompliziert ist, weil es OOP-Geschichten auf eine statische Typisierung anwenden und viele Dinge zur Compilezeit abarbeiten will.
Echt? Kann mich nicht daran erinnern. Erinnern kann ich mich nur an "Weil es so viel OO statisch getypt machen will und gleichzeitig möglichst kompatibel zu C bleiben will."
-
audacia schrieb:
Für den Rest soll AFAIK Objective-C benutzt worden sein. Das läge nahe, weil Cocoa auch primär eine ObjC-Schnittstelle ist.
Hi,
Ok danke, aber was ist an Objective-C denn besser als an C++? Ich höre Objective-C jetzt gerade zum ersten mal wenn ich ehrlich sein soll..
-
Echt? Kann mich nicht daran erinnern. Erinnern kann ich mich nur an "Weil es so viel OO statisch getypt machen will und gleichzeitig möglichst kompatibel zu C bleiben will."
Hab nachgeschlagen, hast recht.
stimmt, früher waren wenigstens noch qbasic bzw. gwbasic dabei. aber heute haste ja .NET auf jeder windoof-kiste und da ist bestimmt auch ein C#-compiler mit drauf.
Keine Ahnung. Aber wahrscheinlich nicht.
Ist sicher nur das Framework, ohne irgendwas weiteres.
-
Die EU hätte ihre Freude
Auch wieder wahr.
Daran hatte ich noch nie gedacht.
-
Ok danke, aber was ist an Objective-C denn besser als an C++?
Weiß ich leider nicht.
Was ich aber weiß, ist daß sich Objective-C später von C abgespalten hat als C++.
Nach allem, was ich so höre, is Objective-C vollständig Syntax-kompatibel zu C, was für C++ nur mit einigen Ausnahmen gilt.Ich glaube ich, irgendwo gelesen zu haben, daß Objective-C stärker auf das Nachrichten-Modell setzt. Ich hab mir irgendwann mal die Syntax angeschaut: aber da waren so viele seltsame eckige Klammern drin, daß ich's wieder gelassen habe.
Schau bei Interesse mal hier:
http://de.wikipedia.org/wiki/Objective-C
-
mngbd schrieb:
stimmt, früher waren wenigstens noch qbasic bzw. gwbasic dabei. aber heute haste ja .NET auf jeder windoof-kiste und da ist bestimmt auch ein C#-compiler mit drauf.
Keine Ahnung. Aber wahrscheinlich nicht.
Ist sicher nur das Framework, ohne irgendwas weiteres.Hm, bei mir in %WINDIR%\Microsoft.NET\Framework\v2.0.50727 ist csc.exe enthalten. Ich hab zwar auch das SDK installiert, allerdings befinden sich dessen Binaries vermutlich nicht in diesem Ordner.
-
Hm, bei mir in %WINDIR%\Microsoft.NET\Framework\v2.0.50727 ist csc.exe enthalten.
Wenn das Out-of-the-box so wäre, würde ich das für eine Gute Sache halten.
Vielleicht hat's die EU einfach übersehen?
-
Was hat das denn mit der EU zu tun? Ein Compiler ist kein Browser. Nach eurer Logik dürfte MS dann auch Paint und Notepad nicht mit ausliefern oder was?
-
Was hat das denn mit der EU zu tun? Ein Compiler ist kein Browser.
Aber technisch von ähnlich großem Aufwand.
Auch wird auf dem Markt stark gekämpft, ich sehe da viele Parallelen.
Nur fällt das wahrscheinlich den wenigsten Richtern so deutlich auf, weil sie keine Compiler verwenden.Nach eurer Logik dürfte MS dann auch Paint und Notepad nicht mit ausliefern oder was?
Wenn die mehr als ein Spielzeug wären, wäre sicher schon prozessiert worden.
-
Freezer- schrieb:
audacia schrieb:
Für den Rest soll AFAIK Objective-C benutzt worden sein. Das läge nahe, weil Cocoa auch primär eine ObjC-Schnittstelle ist.
Hi,
Ok danke, aber was ist an Objective-C denn besser als an C++? Ich höre Objective-C jetzt gerade zum ersten mal wenn ich ehrlich sein soll..
Es ist primär anders. Ob es besser ist soll jeder für sich entscheiden
-
Freezer- schrieb:
Außerdem habe Ich gehört Windows ist angeblich in C programmiert, aber ich frage mich wieso sie das nicht mit C++ gemacht haben?
Weil es mit C++ um durchschnittlich 7,62% langsamer wäre.