2009-07-21 6 views
1

Heute habe ich über eine Schnittstelle fand heraus, dass ich noch nie gehört hatte vor: IGroupingzu Hidden Lernfunktionen

IEnumerable<IGrouping<YourCategory, YourDataItem>> 

Ich bin glücklich, den Zugang zu einigen der besten Programmierung Bücher zur Verfügung zu haben, aber selten komme ich über diese Art von Edelsteinen in diesen Büchern. Blogs und Podcasts funktionieren, aber diese Herangehensweise ist etwas scattershot. Gibt es eine bessere Möglichkeit, diese Dinge zu lernen, oder muss ich die gesamte MSDN-Bibliothek durchsuchen, um sie zu finden?

+0

Was das Buch ist, nur für Neugier ;-) – FerranB

+0

dem Wähler schließen: dupliziert von welchen? – FerranB

+0

Welches Buch, meinst du das mit IGrouping drin? Ich habe das von diesem Beitrag: http://stackoverflow.com/questions/1160420/how-do-i-group-data-in-an-asp-net-mvc-view/1160455#1160455. Sieh dir Mannisans Kommentar in der Antwort an. –

Antwort

13

Eric Lippert's blog. Die wahren Eingeweide von C# - warum gibt es einige Einschränkungen, die auf den ersten Blick willkürlich erscheinen mögen, wie Designentscheidungen getroffen werden, etc.

Alternativ, für mehr Abwechslung, schauen Sie sich die Visual C# Developer Center an - es gibt eine ganze Reihe von Blogs und Artikeln Dort.

Oh, und lesen Sie die C# -Spezifikation. Nein, ich meine es ernst - ein paar Teile können schwer zu durchwaten sein (ich schaue dich an, generische Typinferenz!), Aber da sind einige sehr interessante Sachen drin.

+0

Danke Jon, ich werde es überprüfen. –

+2

+1 Erics Blog ist die Zeit wert, die es zu lesen verbracht hat. –

+2

+1 - Eric's Blog und das Developer Center sind großartige Orte für Leute, die tiefer in die Sprache eintauchen möchten. –

6

Der beste Ort zu beginnen, ist Jon Skeet C# Coding Blog: http://msmvps.com/blogs/jon_skeet/

Er regelmäßig Sachen deckt Sie sonst nirgendwo sehen.

+1

Obwohl es oft einen sehr guten Grund gibt, dass du sie nirgendwo anders sehen wirst :) –

+0

Eigentlich bin ich am meisten erstaunt, dass ich dich auf die Antwort zu diesem Thema geschlagen habe ... –

+0

Offensichtlich hat Jon dich gewinnen lassen also würde er nicht sein eigenes Horn tanzen müssen. –

2

Ich persönlich mag die Art und Weise auf meine eigenen verborgenen Funktionen zu entdecken, während ein bestimmtes Problem zu lösen. Am Ende ist ein verstecktes Feature, das Sie nie brauchen, um etwas zu erledigen, von zweifelhaftem Wert. Es fügt einfach Unordnung zum Gehirn hinzu.

1

Der Weg ist es, die MSDN-Bibliothek zu verwenden, um Dinge nachzuschlagen. Dann nimm dir ein wenig Zeit, um zu schauen um was du gefunden hast.

Das ist besonders wichtig bei der reinen API-Dokumentation. Zum Beispiel habe ich gerade zu http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.aspx geblättert (beachten Sie, wie diese URL gebildet wird). Wenn ich in den Inhaltsbereich auf der linken Seite schaue, sehe ich alles von XmlDocument (und XmlDocumentFragment) bis hinunter zu XmlReader. In der Mitte sind einige Dinge, die ich selten oder nie verwende, wie XmlNamespaceScope und XmlNodeOrder.

Von Zeit zu Zeit verbringen Sie etwas Zeit mit "abstraktem Wissen". Manchmal ist es gut, von den Bäumen aufzuschauen, um sich im Wald zu orientieren. Du weißt nie, wann du etwas brauchst, das du gelernt hast, um dich aus dem Wald zu holen.

+0

OK, ich werde das versuchen. Ich habe kürzlich auf die sehr coole neue "Low Bandwidth" Version der MSDN-Bibliothek umgestellt, und es ist viel einfacher geworden, sich darin zu bewegen. –

+1

Ich stimme zu, aber ich habe festgestellt, dass ich eine "klebrige" Sprachauswahl verpasst habe. Also, ich klickte den "Feedback" -Link und wurde zum Forum für Beschwerden gebracht. Ich las den ersten Post dort und wurde über den "(leichten)" Modus erzählt. Ich mag es noch besser. Versuchen Sie http://msdn.microsoft.com/en-us/library/c22k3d47(lightweight).aspx. –

+0

Ich mag es! Das Aktualisieren von 3 bis 5 Sekunden pro Seite auf 1 Sekunde, ohne dass alle Funktionen verloren gehen. Sehr cool. –

0

Für die Menschen, die nicht IGrouping wissen:
http://msdn.microsoft.com/en-us/library/bb344977.aspx

Ich lese oft nützliche Sachen auf dem Viual Studio Startup Seite und beginnen um auf andere Schlüsselwörter/Bereiche klicken. StackOverflow wird nicht zu sehr gefördert, aber Sie finden hier auch einige versteckte Kleinigkeiten, einfach indem Sie sich anschauen, wie andere Leute Code schreiben.

Zum Beispiel:
Hidden Features of C#?

+0

Alle Posts mit versteckten Funktionen können gefunden werden, indem eine Suche auf der Stack-Überlauf-Site nach dem Tag "hidden-features" durchgeführt wird. –

+4

Außer den "versteckten Funktionen von versteckten Funktionen" post. Das ist versteckt. –