001
21.03.2006, 13:12 Uhr
Reyx
IT-fetischistischer Wurstsalat mit rostigem Berghorn (Operator)
|
.Net ist letztendlich eine Sprachunabhängige Kapselung der WinAPI. Der Nachteil dabei ist, dass deine Anwendungen nicht in nativen Code umgewandelt werden; die Anwendung kann deinen Quellcode z.T. im Klartext enthalten! Zudem ist Reverse Engineering im Verhältnis zu nativem Code sehr einfach! Der Vorteil ist, dass du deinen Quellcode theoretisch selber in den .Net-Sprachen umwandeln kannst (sprich: in C# schreiben und dann per Knopfdruck in VB.Net umwandeln lassen). Das funktioniert in der Praxis aber leider noch nicht ganz so gut. Dadurch, dass alle .Net-Sprachen die gleiche Laufzeitumgebung benutzen, stehen auch die gleichen Komponenten zur Verfügung. Es ist daher relativ gleichgültig geworden, welche Sprache du verwendest.
.Net ist eine Emulation, daher i.d.R. langsamer als native Programme in z.B. C++. Dieser Unterschied ist aber inzwischen kaum mehr merklich, wenn du nicht wirklich Systemnah programmieren möchtest (wofür .Net dann aber eh die falsche Wahl währe).
Als plattformunabhängig sehe ich .Net nicht. Auch die Tatsache, dass es einzig und alleine von Microsoft abhängig ist, mögen manche als Kritik ansehen. Zudem braucht jede Anwendung die Version des Frameworks, für welche sie geschrieben wurde. Mit der Zeit, wenn immer neue Versionen des Frameworks kommen, wird der Endanwender also gezwungen sein, etliche diverse .Net-Frameworks in den unterschiedlichsten Versionen zu installieren -> Grottike Architektur!
Was das GUI-Schreiben angeht: Innerhalb einer Anwendung kannst du (noch?) nicht wechseln. DLLs o.ä. sind aber vollständig kompatibel. Mit einer modernen IDE wirst du im übrigen deine GUI großteils visuell erstellen, und nur die Aktionen noch selber programmieren. Dieser Post wurde am 21.03.2006 um 13:23 Uhr von Reyx editiert. |