Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Allgemeines (OffTopic) » Windows in C++???

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ]
000
08.05.2003, 20:56 Uhr
~erpelqueen
Gast


Hi, ich möchte mal wissen in was Windows geschrieben ist. Mein Freund, der in VB proggt, meint, es sei In VB geschrieben. (Weil olle BillGates dat ja erfunden hat, oder so...)
Ich brach mal gute Gründe warum es nicht in VB sondern in C++ geproggt ist, wenn überhaupt.
Achja, und wenn ich ihn mal zulabern will, wären ein paar negative Seiten von VB auch gut!
Danke für Posts(Denk an meinen Status!!!!!!!!!!)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
08.05.2003, 21:40 Uhr
virtual
Sexiest Bit alive
(Operator)



Zitat:
~erpelqueen postete
Hi, ich möchte mal wissen in was Windows geschrieben ist. Mein Freund, der in VB proggt, meint, es sei In VB geschrieben. (Weil olle BillGates dat ja erfunden hat, oder so...)
Ich brach mal gute Gründe warum es nicht in VB sondern in C++ geproggt ist, wenn überhaupt.
Achja, und wenn ich ihn mal zulabern will, wären ein paar negative Seiten von VB auch gut!
Danke für Posts(Denk an meinen Status!!!!!!!!!!)


Rotfl, Windows in VB???
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
09.05.2003, 01:03 Uhr
Hans
Library Walker
(Operator)


Hi Erpelqueen,

da ist Dein Freund aber mächtig auf dem Holzweg.
Die erste Version von Windows wurde irgendwann mitte der 1980er Jahre in Pascal geschrieben, Microsoft-Pascal wohl gemerkt! Kein Turbo Pascal, obwohl es das damals auch schon gab. Ab Version 3.0 wurde es dann von Pascal in C umgeschrieben, bzw. von Pascal nach C portiert, wie es im Fachjargon richtig ausgedrückt wird. Und bei C ist es nach meinem Wissen bisher auch geblieben. Also Windows 3.1, WfW 3.11 (Windows for Workgroups 3.11), Windoof 9x sowie Win NT sind alle in C geschrieben. Bei XP weis ich es nicht so genau, könnte mir aber ganz gut vorstellen, dass das teilweise in C++ bzw. C# geschrieben ist.
Was spricht jetzt für C und gegen Basic?

Zuerst einmal der grundsätzliche Unterschied, das Basic (egal ob Visual, oder ein anderes) eine Interpretersprache ist. D.h. da werkelt ein Programm im Hintergrund, das sich Basicinterpreter nennt. Dieses Programm interpretiert den Basic-Quelltext zeilenweise, und ruft für jede Zeile ein Unterprogramm auf, das dann das tut, was in der Zeile steht. Der Vorgang wiederholt sich für jede Zeile immer wieder. In Schleifen so oft, wie die Schleife durchlaufen wird.
Eine Compilersprache dagegen wird erst mal vom Compiler in den Maschienencode übersetzt. Das ist jener Code den der Prozessor direkt versteht, und auch ausführen kann. Da gibt es dann also kein Programm mehr, das nachsieht, was als nächstes zu tun ist.
Wenn Du zum Beispiel mal eine Zählschleife in Basic und in C programmierst, und die Ausführungszeiten miteinander vergleichst, wird Dir der Geschwindigkeits-unterschied klar werden. Auf meinem mit 16 Megaherz getakteten 286er war das vor etwa 10 Jahren schon ein Unterschied von etwa 1 zu 100. (Oder doch 1 zu 1000?? - Ich weis es schon gar nicht mehr...)

Ein weiterer Grund ist der, das es Visual Basic in den 80er Jahren noch gar nicht gab. Das wurde erst ab Mitte der 90er Jahre entwickelt, als sich die Konzepte der Visuellen Softwareentwicklung so langsam breit machten. Also zu der Zeit, als die Betriebssyytementwickler bei MS am Win 95 gebastelt haben, haben andere an Visual Basic gebastelt. Und mit unferigen Werkzeugen kann man ja nichts bauen, oder?
Visual Basic ist übrigens aus Quick Basic hervor gegegangen, das seines Zeichens wiederum eine Weiterentwicklung von GW-Basic war. GW-Basic hat man bis zur Version 5.0 (wenn ich mich nicht irre) immer zum Betriebssystem MS-DOS dabei gekriegt. Später, bei MS-DOSe 6.x hat man QBasic dazu gekriegt, das eine Variante von Quick-Basic ist.
QBasic ist übrigens auch auf der Installations-CD von Win95 drauf, obwohl es nicht Standardmässig mit installiert wird. Ob es bei anderen Windoof Versionen auch noch dabei ist, weis ich nicht. Ich glaube aber, das es bei XP nicht mehr dabei ist.

Ein anderer Grund, warum Windows nicht in Basic geschrieben ist, ist der das man in Basic manche Hardware nicht direkt ansprechen, d.h. programmieren kann. Oder wenn es geht, dann ist es meist zu langsam, eben weil der Interpreter nicht schneller kann. Früher hat man sich dadurch geholfen, das man kritische Teile in Assembler geschrieben hat. Das macht man heute übrigens auch noch, aber nur dann, wenn es wirklich nicht anders geht. Es ist nämlich sehr aufwändig, etwas in Assembler zu entwickeln. (Du kannst den C-Compiler ja mal anweisen, ein Assemblerlistung zu erzeugen, am besten aus dem "Hello World"-Programm. Vom Inhalt her wirst Du wahrscheinlich nur "Bahnhof" verstehen, aber die Länge sollte Dich wundern.)
Aber die Sache mit der Geschwindigkeit ist oft das Problem. Bei zeitkritischen Anwendungen kann es wichtig sein, dass ein Programm innerhalb von Mikrosekunden, d.h. millionstel Sekunden reagiert. Das ist in Basic schlicht unmöglich. Jetzt fragst Du möglicherweise, was denn so eine Zeitkritische Anwendung sein könnte? - Da wäre zum Beispiel der Datentransfer von der Festplatte in den Speicher, oder der Datenverkehr über Netzwerke. Früher war auch (vor allem bei Spielen) der Datentransfer vom RAM-Speicher des Rechners in den Speicher der Grafikkarte so ein Problem. Das dürfte sich durch den AGP-Bus, und den riesigen Speichern auf der Grafikkarte inzwischen aber erledigt haben.
Andere zeitkritische Anwendungen sind diverse Treiber, die Windows braucht. So steht in der aktuellen Ausgabe der Computerzeitschrift PC-Magazin zu lesen, das eine Grafikkarte für CAD-Anwendungen um bis zu acht mal schneller sein kann, als bei anderen Anwendungen, wenn der Treiber entsprechend optimiert ist. Und das, obwohl der Grafikchip der selbe ist, der auch bei "gewöhnlichen" Grafikkarten verwendet wird.

Andere Gründe, die für C und gegen Basic sprechen, haben etwas mit der Art und Weise zu tun, wie bestimmte Programmierprobleme gelöst werden. Basic kennt die Unterscheidung zwischen lokalen und globalen Variablen standardmässig nicht. In Basic sind alle Variablen Global. Deshalb darf man eine Variable in einer Funktion nicht x nennen, wenn es in einer anderen Funktion schon eine Variable x gibt. (Es kann sein, dass das bei VB nicht mehr der Fall ist, aber das ist bei Basic nicht die Regel.)
Mit diesem Problem verbunden ist die Verwendung rekursiver Algorithmen, bzw. Funktionen. Eine rekursive Funktion zeichnet sich dadurch aus, das sie sich selbst als Unterfunktion aufruft. Dabei kann es passieren, das sich das Programm verrennt, weil Variablen verändert werden, die sich eigentlich nicht verändern sollen. Derlei Probleme hat man nicht, wenn die Programmiersprache zwischen lokalen und globalen Variablen unterscheidet.
Ein weiterer Grund liegt bei der Speicherverwaltung. In C/C++ kannst Du den Speicher fast nach belieben verwenden. Du musst "nur" wissen, was Du tust. Dieses Wissen, was man tut ist zwar oft das eigentliche Problem, aber das würde hier zu weit führen. Basic stellt einem diese Möglichkeiten so nicht zur Verfügung. (Ein anderes Problem ist, das einem das Betriebssystem nicht erlaubt, den Speicher nach gutdünken zu beschreiben, weil man es dadurch vielleicht verändern könnte.)

So, jetzt ist dieser Aufsatz länger geworden, als ich ursprünglich beabsichtigt hatte. Aber ich hoffe, Dir sind ein paar Sachen klar geworden. Wenn nicht, dann empfehle ich Dir, Dich intensiver mit den Grundlagenthemen zu befassen.

Hans
--
Man muss nicht alles wissen, aber man sollte wissen, wo es steht. Zum Beispiel hier: Nachdenkseiten oder Infoportal Globalisierung.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
09.05.2003, 01:24 Uhr
~0xdeadbeef
Gast


Windows wurde ursprünglich in C geschrieben, obwohl die Programmierer, ihrem Stil nach zu urteilen, wohl eher Pascal gewöhnt waren. Irgendwann beauftragte Microsoft dann die AFX-Leute, einen C++-Wrapper für das Windows-C-API zu schreiben, die sogenannte MFC. Von dem Zeitpunkt an wurde der Rest in C++ gebaut.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
09.05.2003, 16:41 Uhr
~erpelqueen
Gast


So danke jungs.... Also jetzt bin ich überzeugt.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
09.05.2003, 16:43 Uhr
~erpelqueen
Gast


Also kann man eigentlich alles, oder sogar mehr, als WINDOWS kann??? )in C++)
Das AFX-Team muss ja echt fett gewesen sein, mal schnell MFC zu proggen.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
09.05.2003, 17:21 Uhr
~Spacelord
Gast


BOAH ich krieg nen Koller!!!
Du Vogel kannst doch ohnehin alles(zumindest glaubst du das)!!
Also ich verabschiede mich aus dem Kindergarten,wo irgendwelchen Möchtegernvirenprogrammierern auch noch vorgekaut wird womit sie bei ihrem (anscheinend genauso inkompetenten) Kollegen klugscheissen können.
Noch so als kleine Anregung für deine glorreiche Programmiererzukunft:
Schreib dein eigenes OS,vom Konzept her eine Mischung aus KI und verteilter Anwendung.
Die einzigen Erpel-Apifunktionen die dann noch benötigt werden sind:

PostQuestionToForum(Cproblem mein Problem)
WaitForSingleAnswer()
MapAnswerToApp()

Echt,so sparst du es dir die Lösungen der anderen per Kopieren/Einfügen in "dein" Programm einzufügen!
Das OS analysiert die fehlende Funktionalität und postet selbstständig die Frage ins Forum um anschliessend auf die fremde Komponente zuzugreifen!
Tolle Idee was?
Und um das noch klar zustellen,mir ist durchaus bewusst dass wir alle mal Anfänger waren aber dann sollte man sich auch mit Anfängerthemen(sprich Grundlagen) beschäftigen und nicht in irgend nem Forum auftauchen um mal eben(!!!) nen Spiel zu programmieren.Ich weiss auch nicht ob ich der einzige hier bin der dass nen bisschen merkwürdig findet aber irgendwie findet erpelqueen immer wieder nen Dummen der ihm ne fertige Lösung in den Arsch blässt!!

Viel Spass noch!!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
09.05.2003, 17:26 Uhr
virtual
Sexiest Bit alive
(Operator)


rotfl. Ich weiß nicht, wen ich lustiger finden soll

C++:
PostQuestionToForum(Cproblem mein Problem)


Übrigens garantiert ein Syntaxfehler, es sei denn, es wird ein ziemlich unsinniges define gemacht.
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)

Dieser Post wurde am 09.05.2003 um 17:29 Uhr von virtual editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
09.05.2003, 17:38 Uhr
Spacelord
Hoffnungsloser Fall


Hast mich erwischt

....meinProblem);

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
09.05.2003, 18:17 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


@Spacelord
mein *lol* hast du (hab echt gut gelacht)
Damit hast du bewiesen, dass du erpelqueen im "Niveaupöbeln" auch weit voraus bist.
Lustige Beiträge dieser Art kannst du ruhig öfter bringen dann haben wir mal alle was zu lachen

Ich glaub du hast vergessen noch hier zu posten www.fun-soft.de/index.php?file=/forum/showtopic.php?threadid=2353&time=1052496677

Gruss Heiko
--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 09.05.2003 um 18:17 Uhr von Heiko editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ]     [ Allgemeines (OffTopic) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: