cs: Webanwendungen mit MS VS .NET entwickeln

Beitrag lesen

Hi,

ich hatte schon Erfahrung mit .NET und Windows.Forms. Auch etwas ASP.NET. Aber vielleicht nicht in der Intensität wie jetzt.

Und als ich eingestellt wurde, war noch gar nicht klar ob ich Webkram mache oder mich doch eher ums Framework kümmern sollte.
Programmieren kann ich ja, auch C# und in .NET Umgebung.

Nur irgendwie scheint ASP.NET Programmierung (im Moment) weniger Programmierung zu sein, sondern mehr Geklicke auf grafischen Wizards von Komponenten oder im Designer, Einstellungssache und Fehlersuche zu sein.
Ich fühl mich nur manchmal etwas hilflos, da ich zB nicht weiß wodurch das onsubmit Attribut reingerendert wird. Und wenn ich es da (in <form>) nicht haben will, oder wenn ich dessen Wert ändern will, dann geht das halt nicht so einfach. Oder ich bin zu dumm. Aber jedenfalls gehts nicht intuitiv, da es ja im Code nicht da ist, und erst zur Laufzeit entsteht.

Man scheint halt kaum Handhabe zu haben, was ASP.NET alles im Hintergrund macht und was dann am Ende im Browser ankommt.

Gruß!

Hi,

es ist alles Gewöhnungssache, gerade wenn du aus einer eher prozeduralen Programmierwelt wie PHP kommst.

Auch ist das Konzept von ASP.Net mit seinen vielen Designern und vorgefertigten Komponenten (die ihren HTML-Sourcecode generieren) primär auf schnell-zusammenklicken-und-es-funktioniert ausgerichtet und von daher vielleicht etwas undurchsichtig am Anfang. Viele der Komponenten die du auf eine "Seite" zusammenklicken kannst bedienen sich per default gerendertem JavaScript für die Funktionalität, zum Bleistift eben diese Validatoren. Du kannst aber genauso auch ASP.Net Seiten nach dem klassischen Schema "Response.Write" plus dein eigener HTML-Sourcecode basteln. Oder, wenn du entsprechend Erfahrung hast, dann schreibst du dir deine eigenen Komponenten, die dann "semantisch sinvolleren" Code erzeugen.

<table> hin, <ul> her... am Ende funktioniert es und nur das (sowie eine ausreichende Kompatibilität mit diversen Brausern) interessiert den Kunden. Das einige "Semantisches-Markup"-Fetischisten sich nicht ganz wohlfühlen, ist eine andere Geschichte, die ich nicht zu diskutieren brauch.

Um dich besser mit ASP.Net anzufreunden und zu verstehen warum es so ist wie es ist, solltest du dir vielleicht mal ein paar Artikel zum Thema "Lebenszyklus einer ASP.Net Seite" durchlesen. Dann wirst du auch sehr schnell erkennen wozu diese ganzen OnDies und OnDas Methoden da sind.

Warum es nur ein <form> pro Seite gibt? Wozu sollte es mehrere geben? Das <form> Tag spielt bei der Programmierung eine ziemlich unwichtige Rolle. Du greifst für gewöhnlich über die Controls-Collection oder über direkte Felder auf die einzelnen "Formular"-Felder bei PostBacks (form.submit()) zurück. Das Verdrahten, ob das Formular wirklich zum Server geschickt wird oder ob die Aktion (Buttonklicks) auch client-seitig via JS abgehandelt wird, geschieht hinter geschlossenen Gardinen, sprich du sollst dich darum gar nicht kümmern. Du erzeugst einfach deine Formularelemente, verdrahtest sie mit Aktionen (Events) und fertig.

Hast du vorher schon mal reine Windows-Anwendungen entwickelt. Wenn ja, solltest du feststellen, dass MS versucht hat, das Programmiermodell von Windows Forms direkt aufs Web = ASP.Net zu übertragen.

Mit Version 2.0 hat MS (eine Wertung dazu möchte ich aber nicht abgeben) dem ASP.Net noch eine ganze Masse an deklarativer Programmiermöglichkeit hinzugefügt, weniger offensichtlicher Code, noch mehr "behind-the-scenes".

Finale Frage: Wenn du 0 Erfahrung mit ASP.Net (anscheinend wohl auch mit .Net allgemein), was machst du dann in diesem Job? Hat man dich mit dem Bewusstsein angestellt, dass du dich eigentlich erst 12 Monate lang richtig einarbeiten müsstest? Nicht dass ich dir die Fähigkeit zum Einlernen absprechen möchte ... ich finde es nur etwas seltsam ... aber ich kenne ja auch die näheren Umstände nicht.

Ciao, Frank