Inhoudsopgave:
Video: HTML Crash Course For Absolute Beginners 2024
door Bill Sempf, Chuck Sphar, Stephen R. Davis
Als er een probleem is met de. NET Framework vanuit het perspectief van de C # programmeur, het is gewoon dat er te veel goede dingen zijn. Veel klassen hebben zoveel eigenschappen en gebeurtenissen dat het moeilijk te onthouden is wat de meest gebruikte dingen zijn. Dit is het neusje van de zalm in de klassen Collection, Connfiguration en Async, allemaal in elkaar gezet voor eenvoudige referentie.
Materiaal bewaren in C # verzamelklassen
Veel variabelen zijn voor het opslaan van één ding, zoals een getal of een zin. Een object kan veel eigenschappen hebben en veel informatie over een enkel concept opslaan. Soms moet je echter een grote lijst van dingen bijhouden. Dat is waar de collectieklassen binnenkomen.
De collectieklassen in C # zijn geweldig omdat ze u kunnen helpen een lijst met items of een groep sleutels en waarden bij te houden en hulpprogramma's voor zoeken, proctoring en algemeen onderhoud gratis aanbieden. Dat is een stuk eenvoudiger dan deze tweehonderdste 'soort klanten op achternaam' methode schrijven deze maand.
C # heeft basisverzamelingsklassen, generieke verzamelingsklassen en gelijktijdige verzamelingsklassen. Deze laatste zijn voor threadveilige bewerkingen in een multiprocessor-omgeving. Al deze verzamelklassen zijn handig als u weet waar en wanneer u ze moet gebruiken.
Reguliere collecties
Normale collecties slaan ongebruikte spullen voor je op. Als u niet precies weet wat u gaat opslaan, zijn reguliere collecties iets voor u. Bijna alles in deze klassen wordt opgeslagen als Object.
Klasse | Beschrijving |
---|---|
ArrayList | Dit is gewoon een ongecompliceerde verzameling van objecten waarvan de grootte
aanvankelijk is gedeclareerd en die naar behoefte is vergroot (maar niet verminderd). |
HashTable | Gewoon een tabel met twee kolommen met sleutels en waarden, waarbij de paren
zijn gekoppeld voor het sorteren van een retrieval. |
Wachtrij | Een eerste in, laatste uit (FIFO) lijst met items. Zeer geschikt voor het opslaan van programma's
. |
Stapel | zoals een wachtrij, maar Last In First Out (LIFO). |
Generieke verzamelingen
C # 2. 0 introduceerde generieke collecties. Met generieke collecties kunt u getypte verzamelingen items opslaan, zoals aangegeven tijdens runtime.
Klasse | Beschrijving |
---|---|
Woordenboek | Gewoon een HastTable, behalve getypt, dus u hoeft |
Lijst | Dit is de nieuwe array. Het is een getypte lijst met items. Met
veruit de meest gebruikte verzamelklasse. Het is de standaard. Als u een lijst met mensen nodig heeft, is dit een lijst. |
Wachtrij | Vergelijkbaar met de rij zonder type, maar goed getypt! |
SortedList | Dit geweldige woordenboek implementeert ICvergelijkbaar zodat het
kan worden gesorteerd. |
Stapel | Zoals de stapel zonder type, behalve getypt. |
Gelijktijdige verzamelklassen
Tot slot zorgen de gelijktijdige klassen ervoor dat de objecten die u in een lijst opslaat, beschikbaar zijn in elke geheugenruimte, ongeacht de processor. Het is een grotere deal dan je denkt.
Klasse | Beschrijving |
---|---|
BlockingCollection | Het is een threadveilige klasse die voorkomt dat één thread
een veld wijzigt dat toegankelijk is via een andere thread. Fantastische dingen, echt waar. |
ConcurrentDictionary |
Over briljant gesproken, deze set sleutel / waarde-paren kan
zijn voor meerdere threads. |
ConcurrentQueue | Weet je nog die FIFO-stapel? Ja. Deze is generiek AND thread
veilig. |
ConcurrentStack | De georkestreerde collecties zijn handig. Ze zijn goed voor het geheugen, bijvoorbeeld. Hoe dan ook, deze is ook LIFO en
thread-safe. C # configureren> Een hele naamruimte van klassen is ontworpen om toepassingen die in welke dan ook zijn geschreven te configureren. NET-taal, zoals C #, VB. NET, of een van meerdere anderen. De objecten erin zijn op zijn zachtst gezegd een beetje moeilijk om te navigeren. De configuratie in.NET-toepassingen vindt plaats in a. configuratiebestand. Dit XML-geformatteerde bestand heeft een knooppunt en een hele reeks aan projectspecifieke knooppunten. Voor een verwijzing naar de configuratie is een aanroep van OpenExeConfiguration vereist. |
Systeem. Configuratie. Configuration config = ConfigurationManager. OpenExeConfiguration ();
Als dat eenmaal is gebeurd, is het vrij eenvoudig om een verwijzing naar een sectie te krijgen. De GetSection-methode neemt alleen een string die de knooppuntnaam is, en omdat het configuratiebestand slechts tekst is, kunt u het op elk gewenst moment pakken.
var sectionName = & ldquo; Wat dan ook! & Rdquo;; Systeem. Configuratie. AppSettingsSection-sectie = (Systeem Configuratie AppSettingsSection) config. GetSection (sectionName);
U kunt secties aan het configuratiebestand toevoegen met behulp van de XML-manipulatietools in het framework. U kunt een vooraf ingestelde groep op secties gebruiken voor de overeenkomstige functionaliteit.
Sectie
Beschrijving
Opstarten | beschrijft de. NET-versie te gebruiken. |
---|---|
Runtime | geeft de. NET-elementen om te binden aan het uitvoerbare bestand. |
Netwerk | Beschrijft proxy- en andere netwerkinstellingen. |
Cryptografie | Een plaats om toegankelijke waarden te behouden die verwijzen naar crypto-bronnen |
Configuratie | Het meest gebruikte gedeelte. Hier bewaar je aangepaste secties van het configuratiebestand. |
Trace / Debug | Twee instellingen waarmee u tracering en logboekregistratie kunt instellen. |
Toepassingsinstellingen (appinstellingen) | Toepassingen scoped zoals databaseverbindingsstrings. |
Webinstellingen (webinstellingen) | ASP. NET specifieke details. |
Asynchroon programmeren | Veel Windows 8 gaat over snel en vloeiend zijn. De manier om dit te doen is door asynchrone methoden te gebruiken in callbacks van langlopende functionaliteit.Het probleem hiermee is dat in C # de beste manier om een asynchrone methode te implementeren, is door draadsnijden. Maar u kunt niet altijd vertrouwen op wanneer de items van een threading-bewerking terugkomen. Er moet enige controle zijn als u wilt dat gebruikers kunnen voelen dat er enige controle is. |
Voer async in en wacht. async wordt gebruikt om een asynchrone functie te declareren, die een taak retourneert. Alle async-methoden moeten ten minste één afwachtende uitdrukking bevatten. wacht op vertelt C # om de code waarnaar verwezen wordt door te voeren en het in een aparte thread uit te voeren dan de gebruikersthread. De tabel splitst de nieuwe asynchrone delen van de taal op.
Statement
Beschrijving
async | Een modifier die laat zien dat de compiler die de functie die het |
---|---|
modificeert asynchroon is. | wachten op
Een operator die de uitvoering van de methode |
opschort totdat de verwachte taak is voltooid. | Taak
Vertegenwoordigt een asynchrone bewerking. |
Taak | Een asynchrone bewerking die een waarde retourneert. |
Taak. ContinueWith | Een voortzetting die is gestart nadat de bewerking in de taak |
is voltooid. |