Was soll ich lernen ?
Hanno
- software
0 nokill20030 Christian0 SeKo
0 Guillermo0 Hanno0 Lude0 Klaus Mock0 Lude0 Klaus Mock0 Lude
0 Lactrik0 Lude
Hallo,
Ich habe vor einiger zeit intensiv C++ und Visual Basic programmiert und bin im Moment seit gut einem Jahr auf den Internetsprachen wie PHP am programmieren. Ich will nun wieder Windows Anwendungen entwickeln, doch diesmal mit .NET. Da sich die Sprachen durch das .NET modell sehr ähneln, entsteht für mich die Frage:
Was soll ich lernen ?
C# .NET ?
C++ .NET ?
VB .NET ?
oder doch
J# .NET ?
Kann mir jemand die Vorzüge und Nachteile der Sprachen auflisten und mir einen Anhaltspunkt geben ?
Gruß
Hanno
Hallo,
Hi,
C++ .NET ?
Ich würde dir C++ .NET vorschlagen schliesslich hast du ja schon C++ programmiert.
Kann mir jemand die Vorzüge und Nachteile der Sprachen auflisten und mir einen Anhaltspunkt geben ?
Leider kann ich vorzüge oder Nachteile sagen, es ist eben nur meine Rat;)
cu nokill2003
Hi,
auf keinen Fall VB.NET. Persönliche Meinung! Ich finde diese Sprache schrecklich!!
Ich empfehle C# !!! echt schön.
Die anderen kenn ich nicht so.
Aber C# ist irgendwie bisschen logischer, find ich, als C++.
Christian
Hi :-),
auf keinen Fall VB.NET. Persönliche Meinung! Ich finde diese Sprache schrecklich!!
Aber C# ist irgendwie bisschen logischer, find ich, als C++.
weil Java ähnlich? :-)
ohne Zeiger usw.
Gruß
SeKo
Warum willst Du Dich denn so an das .NET-Modell binden? Microsoft tut doch alles dafür, dass die nur unter Windows lauffähig sind.
Weil ich mir Mühe gebe, mit dem Trend zu gehen.
Gruß
Hanno
Hi,
Weil ich mir Mühe gebe, mit dem Trend zu gehen.
Gruß
Hanno
der "Trend" koennte auch darin bestehen, sich nicht von 'Microsfot' abmelken zu lassen und von ".NET" die Finger zu lassen.
Gruss,
Lude
Hallo,
der "Trend" koennte auch darin bestehen, sich nicht von 'Microsfot' abmelken zu lassen und von ".NET" die Finger zu lassen.
Wenn da nicht der WUnshc der Vater des Gedankens ist;-)
Ich habe derzeit beruflich mit .NET und C# zu tun (Windows und Pocket PC). C# gefällt mir als Sprache nicht so schlecht, und auch das Framework hat einige ansprechende Konzepte aufzuweisen. Allerdings haben die Leuts bei MS auf der anderen Seite wieder so viel Bockmist gebaut, daß man sihc wirklich fragen muß, ob die sich in der Plaunungsphase von .NET wirklich so viele andere Sprachen und Systeme angesehen haben, wie sie behaupten.
Positiv ist imho beispielsweise die ganze Geschichte mit den Datasets. Das ist an sicheine wirklich runde Sache, mit der man wirklich was anfangen kann.
Andererseits haben die wiederum im Windows.Forms-Bereich scheinbar eine Philosophie, nur das absolut notwendigste mit zu geben, und all das, was man heutzutage für eine moderne GUI-Anwendung braucht, anderen HErstellern zu überlassen (oder auch irgendwann Addons zu verschneiden).
Die IDE hinterläßt bei mir auch einen sehr zwiespältigen Eindruck. Einige Funktionen sind wirklich brauchbar. Leider ist sie aber auch vollgestopft mit dummen Bugs, die imho eigentlich beim rudimentären Testen auffallen müßten, da man alle Nase lang über einen stolpert. Lustig wird's beispielsweise, wenn man dann auf einer MS-Site Artikel findet, die einem erklären, wie man in mühevoller Handarbeit den COde gerade biegt, den der Form-Designer einem erzeugt hat.
Fazit ist halt das, was es bei MS-Produkten meistens ist. Einiges ist gut im Ansatz, aber wirklich mangelhaft umgesetzt.
Grüße
Klaus
Hi,
Positiv ist imho beispielsweise die ganze Geschichte mit den Datasets. Das ist an sicheine wirklich runde Sache, mit der man wirklich was anfangen kann.
ein Dataset ist vermutlich eine Datensatzmenge, die man in der einen oder anderen Form an '.NET'-Objekte bindet, so dass der Entwickler schnell umsetzen kann, aber nicht mehr wirklich versteht, was zwischen Proggie und DBMS so hin- und hergesendet wird, richtig?
Fazit ist halt das, was es bei MS-Produkten meistens ist. Einiges ist gut im Ansatz, aber wirklich mangelhaft umgesetzt.
Bei '.Net' assoziiere ich "unter Windows" laufende "EXEs" und "DLLs", und "Webloesungen" die im IE6 SP<x> laufen. Kannst Du noch ein paar Leistungsmerkmale von '.NET' nennen?
Gruss,
Lude
Hallo,
ein Dataset ist vermutlich eine Datensatzmenge, die man in der einen oder anderen Form an '.NET'-Objekte bindet, so dass der Entwickler schnell umsetzen kann, aber nicht mehr wirklich versteht, was zwischen Proggie und DBMS so hin- und hergesendet wird, richtig?
So ungefähr. Ein Dataset kann mehrere Datatables besitzen, die auch in Beziehung zueinander gebracht werden können (Foreign-KEys usw.). Es gibt auch Methoden zum filtern und Sortieren der Datensätze (Datarow). Gefüllt werden kann das ganze entweder über einen Data-Provider (ADO, Native Provider für diverse DBMS-Systeme) oder aber auch beispielsweise über XML-Daten (XML-Scheme). Auch ein Merging usw. ist mit abgedeckt.
Ich sehe das ganze halt nur als Container für meine Anwendungsdaten, unabhängig davon wo sie wirklich herkommen. Das ist beispielsweise für das Projekt, an dem ich gerade arbeite (ein generischer Visualiserungs-Client für Daten aus unterschiedlichsten Systemen) recht praktisch. Die Schnittstelle zu den Systemen schmeißt in einem Middleware-Server alle Daten in solche Datasets und liefert sie dann an die Clients aus bzw. bekommt die Daten vom Client zur weiteren Verarbeitung ebenfalls in solche Datasets. Sämtliche Client-Komponenten können mittels Databinding diese Dtaen anzeigen und bearbeiten. Im Prinzip eben das was man afaik so als Three-Tier-System bezeichnet. (Ich kenn mich bei dem theoretischen Zeugs ja nicht so wirklich aus *g*).
Bei '.Net' assoziiere ich "unter Windows" laufende "EXEs" und "DLLs", und "Webloesungen" die im IE6 SP<x> laufen. Kannst Du noch ein paar Leistungsmerkmale von '.NET' nennen?
Man kann einerseits die ganzen Windows-Anwendungs-Sachen (GUI-EXE, Console-Exe, Dll's, Service-Anwendungen usw.) machen und andererseits so die Web-Anwendungs-Geschichte (ASP.NET).
Bei ASP.NET kenn ich mich praktisch gar nicht aus, hab' mir aber sagen lassen, daß das an sich schon auch ohne IE als Browser funktioniert. Auch soll es inzwischen ein Apache-Modul geben, mit dem man ASP.NET Anwendungen auch ohne IIS betreiben kann.
Für den Betrieb brauchts auf dem Rechner, wo es laufen soll, Runtime-Libs (das .NET-Framework), das prinzipiell der VM für Javaprogramme entspricht.
Es gibt dann noch einen unterschied zwischen einem sog. 'managed code' und einem 'unmanaged code', wobei ersterer in einem Zwischencode (MSIL) vorliegt und das .NETG-Framework benötigt und letzeres der übloiche Nativecode ist. Es gibt dann auch einen Mechanismus, um aus dem managed Code heraus auf dden unmanaged Code zugreifen zu können (P/Invoke ist da das Stichwort). No na, irgendwie müssen die ja auch aus dem Framwork heraus Zugriff auf, beispielsweise, die Betriebssystem-Bibliotheken haben.
Bei den Sprachen kann man die von MS bereitgestellten (C#, C++, VB un dJ#) oder auch andere wie beispielsweise Perl verwenden. die kann man dann auch zwar mischen, allerdings afaik nur auf Projekt-Ebene.
Und dann gibt's da noch die Möglichkeit, Anwendungen für WIndows CE bzw. PocketPC zu schreiben, auf denne dann das sogenannte Compact-Framework läuft. Das ist eine stark reduzierte Variante des normalen .NET-Framework.
So, das war's glaube ich im Wesentlichen;-)
Grüße
Klaus
Hallo, Klaus,
die ".NET"-Geschichte ist also gar nicht so schlecht. ;-)
Meine dreijaehrigen "Visual Studio"-Erfahrungen endeten bevor ".NET" "als Reaktion auf die Entwicklung im Webbereich" an den Start ging. Seitdem fummele ich u.a. mit der "Leimsprache" Perl herum, die mir sehr gefaellt. - Wenn ich nur an Visual Basic denke und den Deployment-Trouble und die Dummheit (auch meine) mit der oft der Datenzugriff entwickelt worden ist. :-(
Ich kann mir allerdings vorstellen, dass die Microsoft-Entwicklertools eine schnelle und effeziente Erstellung von Software unterstuetzen, _wenn_ der Entwickler auch Kenntnisse ueber Technologien verfuegt, die von der IDE vor dem Nutzer "versteckt" werden. - Allerdings laeufts dann immer noch "direkt" unter "Windows".
Gruss,
Lude
der "Trend" koennte auch darin bestehen, sich nicht von 'Microsfot' abmelken zu lassen und von ".NET" die Finger zu lassen.
Er hat doch aber unmissverständlich gesagt, dass er "Windows"-Anwendungen entwickeln möchte. Unter Windows gibt es keinen Grund, auf .net zu verzichten... solange er weiterhin für Windows entwickelt.
Grüsse
Lars
Hi,
der "Trend" koennte auch darin bestehen, sich nicht von 'Microsfot' abmelken zu lassen und von ".NET" die Finger zu lassen.
Er hat doch aber unmissverständlich gesagt, dass er "Windows"-Anwendungen entwickeln möchte. Unter Windows gibt es keinen Grund, auf .net zu verzichten... solange er weiterhin für Windows entwickelt.
man koennte ja dennoch auf die Idee kommen, wenn die Anforderungslage es zulaesst, mit "Perl-Loesungen" oder auch mit "Java-Loesungen" zu kommen.
Und jemand, der mit dem "Trend" geht, waere vielleicht gut beraten auch plattformunabhaengig Kaufebndes in Betracht zu ziehen.
Gruss,
Lude