Welche Komponenten des .NET-Frameworks sollte ein professioneller Entwickler normalerweise vermeiden?

8

.Net ist ein riesiges Framework mit einigen Funktionen, die auf Anfänger ausgerichtet sind oder problematisch werden, wenn viel Anpassung erforderlich ist. Welche Funktionalität im .NET-Framework ist also Ihrer Meinung nach für professionelle Entwickler zu empfehlen und warum?

Zum Beispiel hat .Net einen Assistenten für allgemeine Benutzerverwaltungsfunktionen. Wird diese Funktionalität nur für den professionellen Gebrauch oder nur für Anfänger verwendet?

Eine Komponente / Feature / Klasse usw. pro Antwort , also sind die Stimmen für ein einzelnes Element spezifisch.

    
Cory House 21.05.2014, 21:20
quelle

9 Antworten

16

Getippte DataSets
ASP.NET * Steuerelemente anzeigen ASP.NET * DataSource-Steuerelemente

    
John Sheehan 19.04.2009 22:29
quelle
9

MS Ajax

jquery und andere js-Frameworks wie Prototyp usw. sind eine leichtere und flexiblere Alternative. Die MS Ajax-Steuerelemente scheinen zunächst großartig zu sein, bis Sie wirklich ein benutzerdefiniertes Verhalten außerhalb des Bereichs der Steuerelemente benötigen.

Microsoft selbst hat dies bis zu einem gewissen Grad dadurch erkannt, dass jquery mit kommenden Versionen von Visual Studio mit Intellisense-Unterstützung gebündelt wird.

    
Bayard Randel 19.04.2009 23:13
quelle
4

Ich denke, dass die meisten Steuerelemente / Funktionen, die viel Arbeit hinter den Kulissen leisten, eine Menge Ärger verursachen können. Kein Problem mit einem GridView, wenn das Layout genau ist, was Sie wollen - aber es ist sehr selten, und ein Repeater ist wahrscheinlich eine bessere Wahl. UpdatePanels können Ihnen viel Arbeit ersparen, wenn Sie ein Ajaxy-Gefühl auf Ihrer Seite haben wollen, aber verglichen mit einem jQuery AJAX-Aufruf sind sie - entschuldigen Sie das bitte - scheiße. Der Benutzer-Assistent, den Sie erwähnen, kann während der Entwicklung wirklich nützlich sein, aber wenn eine Mitgliedschaftsfunktionalität im Projekt benötigt wird, sollte sie als ein integrierter Teil davon erstellt werden.

Zusammenfassend gesagt: Professionelle Programmierer sollten die Aufgabe selbst erledigen und Code schreiben, der speziell auf die Bedürfnisse ihrer Kunden zugeschnitten ist, und nur vorgefertigte Teile des .Net Framework verwenden, wenn dies genau das ist, was sie brauchen.

    
Tomas Lycken 21.05.2014 21:19
quelle
1

Thread.Abort

Hier ist ein ausgezeichneter Artikel von Ian Griffiths über Warum Thread.Abort ist böse und einige bessere Alternativen.

    
JayMcClellan 19.04.2009 22:38
quelle
1

Remoting ist im Allgemeinen eine gute Option, die Sie zumindest vermeiden sollten, wenn Sie 3.0 oder höher haben und daher problemlos Messaging-Endpoints im Prozess hosten können.

    
itowlson 20.04.2009 03:51
quelle
1

Linq nach XML

XmlDocument / Xpath ist einfacher zu verwenden, wenn Sie eine starke Typisierung benötigen, um Ihr Dokument zu analysieren, verwenden Sie xsd.exe oder Xsd2Code .

BEARBEITEN

Welche bevorzugen Sie?

%Vor%

oder mit XmlDocument und XPath

%Vor%     
Nicolas Dorier 20.04.2009 10:46
quelle
0
  

.Net ist ein riesiges Framework mit einigen Funktionen, die auf Anfänger ausgerichtet sind oder problematisch werden, wenn viel Anpassung erforderlich ist.

Es ist das "scheint Anfänger zu zielen", das ist das eigentliche Problem.

Typisierte Datensätze sind ein gutes Beispiel. VS bietet eine nette, einfache Benutzeroberfläche für Funktionen, die nur von Anfängern verwendet werden sollte, die extrem einfache Demo-Anwendungen und erfahrene Profis entwickeln, die jede Nuance des ADO.NET-Objektmodells verstehen und welche typisierten Datensätze tatsächlich ausgeführt werden. Niemand zwischen diesen beiden Polen sollte es berühren, denn es gibt eine gute Möglichkeit, jede Nuance des ADO.NET-Objektmodells zu lernen, und typisierte Datensätze sind es nicht.

Oder nimm LINQ. Es ist verführerisch einfach, LINQ-Code zu schreiben, ohne ein gutes Verständnis von IEnumerable<T> zu haben. Aber es ist nicht so einfach, wartbaren LINQ-Code ohne dieses Wissen zu schreiben.

    
Robert Rossney 20.04.2009 02:27
quelle
0

Sie können sich .NET wie eine Zwiebel mit vielen Schichten vorstellen. Zum Beispiel ist das .NET compact framework eine Untermenge von .NET. Darüber hinaus gibt es auf .NET zusätzliche "Layer" in Form von "Extensions", die optionale Installationen für neue Features sind, die noch nicht Bestandteil von .NET sind. Ein Beispiel dafür wäre, wenn Microsoft ASP.NET 3.5 Extensions , die jetzt in .NET 3.51 gerollt wurde.

Eine andere Möglichkeit, an .NET zu denken, ist eine Reihe von "Bibliotheken", die Sie verwenden können. Zum Beispiel gibt es einen Satz oder Routinen zur Unterstützung von RegEx. Wenn Sie reguläre Ausdrücke wollen oder brauchen, dann benutzen Sie diese Funktionen, wenn nicht, können Sie sie einfach ignorieren. Einfache Funktionen für Dinge wie Trigonometrie oder Sicherheit.

Also, ich denke, es läuft wirklich darauf hinaus, was Sie für Ihre Anwendung brauchen? Wenn Sie wissenschaftliche Programmierung machen, möchten Sie vielleicht die trigonometrischen Funktionen. Eine grafische App benötigt Funktionen, die eine Konsolenanwendung nicht benötigt. Web-Apps müssen wahrscheinlich nicht die Zwischenablage-Funktionen usw. verwenden.

Ich glaube wirklich nicht, dass es in .NET irgendwelche schlechten APIs gibt, nur Programmierer, die sie in unpassender Weise benutzen.

    
JonnyBoats 20.04.2009 03:41
quelle
0

Es gibt viel zu vermeiden in der WinForms-Bibliothek.

Vermeiden Sie DataBinding für die meisten standardmäßigen WinForms-Steuerelemente. Es gibt viele Käfer in diesem Bereich, die zu vielen Kopfkratzern führen. Zumindest ist das meine Erfahrung. NumericUpDown ist ein gutes Beispiel für dieses fehlerhafte Chaos.

Vermeiden Sie auch die standardmäßigen WinForms-Steuerelemente, wenn Sie mit großen Datenmengen arbeiten. Sie machen viele Datenkopien und können mit großen Datenmengen nicht gut umgehen.

Vermeiden Sie ListView im "Virtuellen" Modus, da es voller Bugs ist.

Im Allgemeinen empfehle ich, sich von WinForms fernzuhalten. Wenn Sie die Option für WPF haben oder kaufen Sie eine gute, gut unterstützte (und hoffentlich weniger Buggy) 3rd Party Forms Bibliothek.

    
orj 20.04.2009 06:03
quelle

Tags und Links