Managed/Forms/.net
-
Hi!
Wie hängt managed code, forms und dotnet zusammen?
Heißt dotnet automatisch auch forms? Oder eigentlich eher managed code?Grüße
Huddi
-
Moin,
bevor es jeamnd anders sagt ... Hände weg von C++/CLI - außer es muss unbedingt sein
hand, mogel
-
Also ich werde demnächst ein Praktikum machen, da hieß es:
Programmierung in .net/C++Deswegen wollte ich mir das nochmal genauer ansehen.
Und an der Uni bei uns wurde C++ explizit mit .net verwendet^^.
Allerdings auch mit Kapseln von unmanaged code usw.Aber kannst du mir trotzdem was zu meiner Frage sagen?
-
Wie hängt managed code, forms und dotnet zusammen?
Heißt dotnet automatisch auch forms? Oder eigentlich eher managed code?1. .NET ist die Technologie, dazu zählt die Runtime (CLR), das Typen System (CTS), das Framework (.NET Klassen).
2. .NET ist Managed Code, d.h. es wird im ersten Schritt nicht in Maschinen Code umegwandelt, sondern in IL (Intermediate Language), die Ausführung erfolgt unter der Kontrolle der CLR (Runtime). Auch andere Sprachen sind managed in diesem Sinne.
3. Windows Forms ist ein GUI Toolkit (Klassen, Modell) welches in .NET zur Verfügung steht. Unter C# gibt es bereits das neuere WPF, welches aber bei C++/CLI nicht unterstützt ist.Windows Forms geht nur mit .NET zusammen.
Aber wie bereits mogel schon angetönt hat: C++/CLI hat seinen Verwendungszweck in der Interoperabilität zwischen der mananged (.NET) Welt und der native (z.B. ISO C++) Welt. Für andere Dinge ist es schlicht nicht geeignet und bietet sehr viele Fallstricke.
Ich halte das für eine üble Mode- Erscheinung, dass es Unis gibt, die in Kursen C++/CLI anbieten ohne den Fokus der Interoperabilität zu legen, sondern als allgemeiner Einstieg. Es gibt soviel geeignetere Sprachen dazu, welche sogar noch Praxis- Relevanz haben (C#, Jave, etc).
Simon
-
Danke für die Erklärung!
Also hab ich das richtig verstanden, dass .net auch (bzw eher) ohne forms sinn macht?
Übrigens wurde wenn ich zurückdenke in dem Unikurs tatsächlich eher der Fokus
auf die Interop Methode gelegt. Allerdings kams da eher so rüber, als wär
das ein "notwendiges übel" was wir jetzt gezwungenermaßen machen müssen.
Dass das die eigentliche verwendung für c++/cli ist kam in keinem wort vor
-
Also hab ich das richtig verstanden, dass .net auch (bzw eher) ohne forms sinn macht?
Für .NET mit C++/CLI: auch (bzw eher)
nur
Für .NET mit C#, VB: auch (bzw eher)auch
Simon