Hallo, von der Fachhochschule habe wir die Programmiersoftware Microsoft Visual Studio.Net 2003 erhalten.Da ich noch Semesterferien habe möchte ich mich mit dieser Software programmieren.Vorher habe ich mit Borland Builder C++ 5.0 gearbeitet.Jetzt weiss ich nicht was ich was anklicken muss. Es gibt so viele Varianten. Ich möchte eigentlich so programmieren wie unter Borland Builder, das heist mit Fenster,Buttons usw. Wenn ich auf neu klicke erscheint: -Visual C++ Projekte -.NET -ATL -MFC -Win32 -Allgemein Mit was programmieren die meisten Firmen überhaupt?
Win32, MFC, .NET ist dafür geeignet. MFC bietet dir komplette Klassen für Fenster usw. Bei Win32 mußt du die Windows API selbst bemühen. .NET, naja lass es besser.
Wenn es von allem soviel gäbe, wie es MFC Tutorials im Netz gibt ... Bemühe einfach mal Google.
www.codeproject.com ist 'ne ganz gute Anlaufstelle, sofern man des Englischen mächtig ist.
Hi MFC der .NET-Klassenbibliothek vorziehen? Warum sollte jemand das tun wollen? Man bindet sich mit der MFC noch stärker an M$ als mit .NET da es die .NET Klassenbibliothek in Teilen schon als freie Implementierung gibt. Für die MFC gibt es AFAIK nichts. Matthias
kommen noch mehr Killerargumente oder wars das mit dem Trollen schon? @Michael: Ja. ----, (QuadDash).
Michael möchte ähnlich programmieren, wie er es von seinem Borland-Produkt her kennt. Also warum bitte soll er .NET benutzen? Wenn er sein fertiges Programm mal auf einem anderen Rechner benutzen will, darf er erst mal das .NET-Framework installieren und sein Rechner mit noch mehr Müll vollschaufeln. Freie .NET Klassenbibilotheksimplementierungen (LOL) sind ja nett, nur ist das hier in keinster weise gefragt. Da er MS Visual Studio benutzen will, ist die Bindung an MS ohnehin gegeben. Ansonsten kann er ja gleich JAVA benutzen. > kommen noch mehr Killerargumente oder wars das mit dem > Trollen schon? Was soll dieser Schwachsinn? Benimm dich mal, hier darf jeder seine Meinung sagen und ich bin niemandem auf die Füße getreten.
Dein Posting oben hatte schon sehr den Anschein hier nur zu trollen
(polemisch hingeworfener Satzbrocken ohne Begründung).
Wenn ich die Wahl hätte zwischen MFC und .net, dann würde ich .net
verwenden. Erstens wg. der freien Klassenbibliothek und zweitens
zukunftssicherer weil neuer. Der Erfolg von .net ist nicht mehr
aufzuhalten - meine Meinung. Aber ich will mich da nicht in Details
reinsteigern/reinreden, die ich nicht von beiden Seiten aus beurteilen
kann.
Zukünftige MS Betriebssysteme haben das .net-Geraffel schon drin.
Installieren muß man es auf alten Betriebssystemen sowieso früher oder
später. Ich sehe darin keinen Nachteil. Wo liegen die Vorteile der
MFC?
> Benimm dich mal
----, (QuadDash).
> Wo liegen die Vorteile der MFC?
Extrem weite Verbreitung. Bei .NET verziehen die Leute immer noch das
Gesicht und winken ab.
> Michael möchte ähnlich programmieren, wie er es von seinem > Borland-Produkt her kennt. Dann muß er .NET benutzen. An der Entwicklung des Frameworks waren, soweit ich weiß, Borland-Leute beteiligt. Wenn es also parallelen gibt, dann hier.
> Bei .NET verziehen die Leute immer noch das Gesicht und winken ab.
Ja, klar. Das machen aber normalerweise nur die Leute, die sich noch
nicht damit beschäftigt haben. Es ist immer leicht, Sachen schlecht zu
reden, die man nicht versteht.
> Das machen aber normalerweise nur die Leute, die sich noch > nicht damit beschäftigt haben. Richtig, und oft sind diese Leute nicht bereit, sich damit zu beschäftigen. Also ehe man sich dann auf längere Diskussionen einlässt, nimmt man MFC und jeder ist glücklich und Nachteile entstehen auch keine.
Das ist natürlich ein Argument. Weil andere Leute völlig eingefahren und
Neuem gegenüber total verschlossen sind, sollte man es selbst auch
sein.
Das verstehe ich im Moment zwar nicht, nehme das aber trotzdem mal so
an.
> Nachteile entstehen auch keine.
Das sehe ich anders. Der OP kennt die MFC noch ganz und gar nicht. Und
bis er das richtig drauf hat, darf er sich gleich wieder neu
orientieren. Irgendwie verschwendete Zeit, meinst Du nicht auch?
> Weil andere Leute völlig eingefahren und Neuem gegenüber > total verschlossen sind, sollte man es selbst auch sein. Nein, so ist es nicht. Es kommt einfach auf dein Einzelfall drauf an. Wenn man in einer Firma sitzt, in der 40-jährige Programmierer arbeiten die die MFC im Schlaf beherrschen und man selbst den Auftrag bekommt, eine Anwendung zu programmieren und wenn man dan noch den Vorschlag macht, doch etwas neues zu benutzen dann sollst du mal sehen, wie die älteren Semester abgehen. Etwas Neues ist schön, nur wenn sonst keiner bereit ist, auf diesen Zug aufzuspringen, bringt das nichts.
Hi Michael will aber privat etwas machen. Und da würde ich mir die MFC nicht antun wollen da .NET schlicht und einfach moderner ist und mit C# auch eine sehr schöne Sprache im Schlepptau hat. Wenn einem die Firma natürlich vorschreibt "MFC, sonst nichts" dann muß man sich dem beugen. Hat man aber die Wahl sollte man nicht mehr zur MFC greifen. Sonst hat man in einem Jahr ein Stück Software das sich nur noch schlecht in die dann neue Windows Grafikwelt integriert da die neue Renderengine (Vektorgrafik und so) von der MFC wohl nicht unterstützt werden wird. Matthias
.net ist kein Ersatz für eine Klassenbibliothek wie die MFC, sondern ein vollkommen anderer Ansatz. .net kann man auch nicht mit einem "echten" C++-Compiler nutzen, sondern bedarf eines Quasi-C++-Dialektes namens "managed C++". Man kann, wenn man sie denn kennengelernt hat, durchaus auch mit der MFC anständige und brauchbare Programme schreiben. Nur ist einerseits die Lernkurve recht steil, weil die MFC recht viel Historie mit sich herumschleppt, ziemlich unstrukturiert und vor allem ziemlich schlecht dokumentiert ist. Es gibt zwar mehrere recht gute Bücher über die MFC (Jeff Prosise: "Programming Windows with MFC", Shepherd/Wingo/Kruglinksi: "Programming Visual C++", Shepherd/Wingo: "MFC Internals"), aber auch die sind ohne grundlegende Kenntnisse der der MFC zugrundeliegenden Win32-API kaum sinnvoll zu gebrauchen. Die MFC ist halt teilweise nur eine sehr dünne Schicht über der kaum minder kruden und schlecht dokumentierten Win32-API, so daß MFC-Wissen nicht auf anderen Plattformen anwendbar ist. Sinnvoll damit arbeiten kann man nur mit Microsoft-Compilern (Visual C++ 6 bzw. Visual C++ 7.1/2003), so daß man sich richtungstechnisch ziemlich festlegt. Wenn man schon eine Klassenbibliothek erlernen möchte, ist es meiner Ansicht nach sinnvoll, eine zu verwenden, die für mehrere Plattformen verfügbar ist, so daß man Programme nicht nur für Windows, sondern auch für Linux und Mac OS entwickeln kann. Sinnvolle Alternativen zur MFC, die mit herkömmlichen C++-Compilern genutzt werden können und keine 20MByte-Runtime benötigen wären: - QT War bis vor kurzem für Windows nur kommerziell verfügbar, mittlerweile steht auch die Windows-Variante unter der GPL, diese ist aber nicht so ohne weiteres mit jedem Compiler verwendbar. Derzeit wird von der GPL-Variante wohl nur MinGW unterstützt. (www.trolltech.no) - wxWidgets Frei verfügbar, mit Unterstützung für viele freie C++-Compiler und einem recht kostengünstigen kommerziellen GUI-Builder (Dialogblocks), der mehr und mehr zu einer vollständigen IDE mutiert. (www.wxwidgets.org, www.anthemion.co.uk)
Nachtrag: Man kann sich bei .net natürlich noch weiter von C++ entfernen, wenn man denn so etwas will: C#, Visual Basic, Delphi etc.
ein grosser Vorteil von .net wurde noch nicht genannt: keine Probleme mehr mit Speicherfressern und Zeigerfehlern, der Todesursache der meisten C/C++ Programme. Die .net classlib ist schon sehr gut durchstrukturiert und C# hat für die meisten Anwendungen eine sehr gute Performance ohne das man sich mit Speicherproblemen rumplagen muss, da macht das Programmieren echt Spass. Etwas komplizierter wird es nur wenn man mit byte-orientierten Welten kommunizieren muss, da wird die syntax etwas kryptisch. Aber für die ersten Sachen mit GUI ist .net relativ einfach, tu dir die MFC da nicht an wenn du nicht unbedingt musst.
Bei mir zählt immer noch ".Net not yet". Wenn Du mal eben schnell eine Dialog-Anwendung erstellen möchtest, die irgendwas mit Daten auf der Platte, im Speicher oder über hereinfliegende Daten auf irgendwelchen Schnittstellen anstellen soll, dann empfehle ich die MFC. Samples und Tutorials findest Du zu genüge - Englisch solltest Du ja auf der Fachschule ein wenig beherschen, so dass auch www.codeguru.com oder www.codeproject.com kein Problem für Dich sein sollten.
. "ein grosser Vorteil von .net wurde noch nicht genannt: keine Probleme mehr mit Speicherfressern und Zeigerfehlern, der Todesursache der meisten C/C++ Programme." Das sehe ich nicht wirklich als Vorteil. Wenn jemand, der mit solch einem System programmieren gelernt hat, irgendwann mal der harten und kalten Realität von C bzw. C++ (nicht "managed c++") ausgesetzt ist, kommt erst Recht nur Quark dabei 'raus. Plumpes Äquivalent: Wer in der Fahrschule seinen Führerschein "auf Automatik" macht, hat ein Problem, wenn er mit einem Auto mit Schaltgetriebe fahren soll ...
> Plumpes Äquivalent:
Stimmt. Und wer auf Automatik und Schaltgetriebe fahren kann, wird dann
seine Probleme beim Umstieg auf Holzvergaser haben...
Zur Erläuterung: Erstens gings um privat programmieren und zweitens
kann man das als Argument gegen die aktuelle Entwicklung nicht gelten
lassen, sonst käme nie ein Fortschritt zustande.
----, (QuadDash).
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.