Dies ist Teil 6 der kleinen Serie, die ich als Kommentar zum Blog-Beitrag Top 10 Mistakes that C# Programmers Make begonnen habe.
Heute zum Thema… – immer noch LINQ. Irgendwie.
Common Mistake #6: Getting confused or faked out by extension methods
Hm.
While there certainly are advantages to using extension methods, they can cause headaches and wasted time for those developers who aren’t aware of them or don’t properly understand them. […]
Even developers who are familiar with extension methods still get caught occasionally, when there is a method with the same name on the object, but its method signature differs in a subtle way from that of the extension method.
Extension Methods ein “Common Mistake”? Ist das so? Vielleicht für den einen oder anderen. Gelegentlich. Aber “Common”? Nicht nach meiner Erfahrung.
Extension Methods werden im Visual Studio über Intellisense kenntlich gemacht und F12 (“go to definition”) tut ein Übriges.
Dazu kommt, dass Extension Methods nicht nur Teil des Fundamentes von LINQ sind, sondern mittlerweile auch ASP.NET MVC reichlich Gebrauch davon macht. Mit häufigem Nutzen kommt aber auch Übung.
Ergo: Natürlich muss man Extension Methods mal verstanden haben. Das ist aber nach meiner Erfahrung kein echtes Problem. (Für das Schreiben eigener Extension Methods mag anderes gelten.)
Mehr zum Thema findet sich hier…
Sie sehen gerade einen Platzhalterinhalt von Facebook. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr InformationenSie sehen gerade einen Platzhalterinhalt von Instagram. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr InformationenSie sehen gerade einen Platzhalterinhalt von X. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr Informationen