Summary Pro C♯ 2008 and the .NET 3.5 platform

-
ISBN-10 1590598849 ISBN-13 9781590598849
219 Flashcards & Notes
1 Students
  • This summary

  • +380.000 other summaries

  • A unique study tool

  • A rehearsal system for this summary

  • Studycoaching with videos

Remember faster, study better. Scientifically proven.

This is the summary of the book "Pro C♯ 2008 and the .NET 3.5 platform". The author(s) of the book is/are Andrew Troelsen. The ISBN of the book is 9781590598849 or 1590598849. This summary is written by students who study efficient with the Study Tool of Study Smart With Chris.

Summary - Pro C♯ 2008 and the .NET 3.5 platform

  • 1.1 Geschiedenis / aanleiding

  • Wat maakt Java een betere technologie dan Microsoft voordat .NET bestaat?
    Java is eenvoudiger in het gebruik en is platformoafhankelijk. Java had voorgedefinieerde packages (libraries) en Java kan op alle systemen worden gebruikt.
  • Wat zijn de voor- en nadelen van Java?
    Voordelen zijn platformonafhankelijkheid en eenvoudig in het gebruik voor de programmeurs. Nadeel is geen taal integriteit, alles moet in Java geprogrammeerd worden.
  • Wat zijn de voor- en nadelen van Microsoft technologieën voordat .NET bestond?
    Meer nadelen dan Java, namelijk moeilijk in gebruik, platformafhankelijk en weinig taal integriteit.
  • Wat voor programmeertalen waren voor .NET en de volgorde opnoemen?
    C, C++, Visual Basic, Java en dan pas C#
  • 1.2 .NET oplossing

  • Wat is .NET precies?
    Een runtime en een uitgebreide base class library, de bcl is zoals de Java packages.
  • Wat is runtime?
    Een verzameling van services waarmee om gecompileerde code uit te voeren.
  • 1.2.1 Kenmerken

  • Wat zijn de kenmerken van .NET?
    Eenvoudig gebruik, platformonafhankelijkheid en taal integriteit
  • Waarom is .NET eenvoudig in het gebruik?
    Het maakt zoals Java gebruik van voorgedefinieerde packages, de Base Class Library. Daarnaast heeft het handige functies.
  • Hoe is .NET platformonafhankelijk?
    Derde partijen breiden het .NET runtime uit, bijvoorbeeld het bedrijf Mono met Monocross, Mono for Android e.d. Daarnaast is het .NET framework beschikbaar op niet Windows systemen, zoals Linux en Mac. Ook is C# een internationale standaard.
  • Hoe is taal integriteit mogelijk en wat voor talen worden er ondersteund?
    De talen C++, C#, Pascal, Cobol zijn ondersteund. Taal integriteit is mogelijk doordat de platformspecifieke taal door de compiler omgezet wordt naar de gemeenschappelijke taal CIL (Common Intermediate Language) en met de metadata verpakt wordt in een assembly. Deze assembly is uitwisselbaar met projecten waarin verschillende .NET ondersteunde talen worden gebruikt.
  • 1.2.2 Bouwstenen .NET en Base Class Library

  • Wat zijn de bouwstenen van .NET?
    Common Language Runtime (CLR), Common Type System (CTS) en Common Language Specification (CLS).
  • Wat doet CTS?
    Beschrijft alle mogelijke en ondersteunde data types en programmeerconstructies van een specifieke taal.
  • Wat doet CLS?
    CLS is een subset van CTS en wordt door alle .NET talen ondersteund.
  • Wat voor relatie heeft CLR met CTS en CLS?
    CLR gebruikt onder andere CTS en CLS om de types van de gecompileerde applicatie te gebruiken.
  • 1.2.3 .NET compilers

  • Wat doet een .NET compiler?
    Het genereren van een package dat een "assembly" wordt genoemd. De assembly kan door alle .NET talen worden gebruikt (taalintegriteit)
  • Wat voor formaten kan de assembly voorkomen?
    Zowel dll als exe, waarvan .dll een code library is en .exe een executable applicatie.
  • Wat voor 3 componenten zitten in een assembly?
    Common Intermediate Language, Type metadata en een assembly manifest
  • Wat is CIL en is vergelijkbaar met?
    CIL is de gemeenschappelijke taal onder de .NET aware programmeertalen. De compiler genereert CIL door de platformspecifieke code te vertalen. Dit is vergelijkbaar met Java bytecode. CIL wordt alleen uitgevoerd als het wordt aangeroepen in de runtime. 
  • Wat beschrijft de type meta data?
    De karakteristieken van de gebruikte types in de assembly, zoals klasse naam, properties, methodes, fields e.d.
  • Wat beschrijft de assembly manifest?
    Details van de assembly met de gerefereerde externe assemblies.
  • Wat zijn namespaces?
    Namespaces zijn naamgevingen om de data types in een assembly te onderscheiden, door gelijksoortige types te groeperen met namespaces.
  • Wat voor voordeel heeft .NET namespaces ten opzichte van bijv. Visual Basic library?
    .NET namepaces en types zijn allemaal zelfde voor de verschillende .NET ondersteunde talen.
  • Wat moet de programmeur doen om met types te werken?
    Met using de namespaces bovenin specificeren en de externe assemblies referenties toevoegen.
Read the full summary
This summary. +380.000 other summaries. A unique study tool. A rehearsal system for this summary. Studycoaching with videos.

Latest added flashcards

Welke statische methodes zijn er beschikbaar binnen System.Object en wat doen ze?
Equals() en ReferenceEquals().
De Equals() vergelijkt de states van de objecten en de ReferenceEquals() vergelijkt of de referenties verwijzen naar hetzelfde object.
Wat doet de GetHashCode() methode?
Geeft de numerieke waarde van de state van een object. Twee string variabelen met dezelfde tekst resulteert in dezelfde hashcode.
Wat doet de ToString() methode?
Het geeft een fully qualified namespace terug, een string representatie van het object met de type.
Wat doet de virtuele Equals methode?
Het vergelijkt of twee variabelen naar hetzelfde object in het geheugen verwijzen, geen vergelijking van de states van de objecten.
Wat doet de is keyword?
"is" controleert of een type een specifieke type is.

if (clara is Manager) { ... }

Wat doet de as keyword en wat wordt hiermee voorkomen?
As controleert of een type casting kan plaatsvinden door de types te vergelijken op compatibiliteit.

Programmer programmer = clara as Programmer;
if (programmer == null) Console.WriteLine("Clara is not a programmer");
else Programmer progr = (Programmer)clara;

Wat zijn de twee casting rules voor classical inheritance?
1. Een child type kan in een parent type worden opgeslagen, waarbij een impliciet casting plaatsvindt.
2. Een parent type kan in een child type worden opgeslagen, met een expliciet downcast.
Hoe kan na de overschaduwde member in de child class worden aangeroepen?
Door een expliciet casting uit te voeren:
( (Cirlce).o ).Draw();
Hoe kan member shadowing worden opgelost?
Door eerst te kijken of er toegang is tot de code in de base class. Zo ja, in de base class de member een virtual member van maken en in de child class de keyword override zetten. Indien geen toegang is tot de base class, kan de new keyword worden gebruikt door het voor de return type te zetten.
Wat is member shadowing?
Een member in een child class overschaduwt een bestaande member in de base class. In de child class zit dus een methode met dezelfde naam als in de base class.