DM072 - 1. studieår       til andre ugeplaner

Ugeplan for Systemkonstruktion & Computerarkitektur og Operativsystemer

Sidst ændret: 2007.12.14

Til uge 50

Uge 50
Dag Tidspunkt Emne Litteratur / Opgaver
Mandag  08:30 - 11:50  Filer, lidt om string's
samt opsamling på arv og polymorfi

Slides om tekstfiler og streams
Eksempel på tekstfiler og streams

Opgaver se nedenfor minimum opgave 1 og 2 afleveres senest onsdag kl. 16:00 - mindst en af opgaverne skal også indeholde try-catch omkring læsning/skrivning

C# 5.8 om filer, C# 5.1-5.3

Supplerende læsning C# for Studens kap 18 (se BlackBoard for detaljer)

Slide om FileDialog
Slide om serialisering med filestream

Ekstra eksempel på arv med figur

   
Torsdag  08:30 - 11:50  CPU arkitektur - opsamling og om nye intel core 2 duo Intel Core 2 Duo - Test - BeHardware
Processor secifikationer
Filsystemer til windows og linux

Opgaver se nedenfor

C# 5.9 om Directories og  files

Program NtfsInfo - vis info om NTFS partitioner

Fredag  08:30 - 11:50  Opsamling og noget om Test
Vi får muligvis gæsteforelæsning af Niels Otto om test

Opgave:

1. Lav et testprojekt til en af dine tidligere opgaver og afprøv manuel test og Unit test.

2. Du kan også prøve at hente projekt fra videoen og afprøve ud fra dette

Note om test og testdrevet systemudvikling i Vs2005 findes i BlackBoard

Videoer om systematisk test med brug af testprojekter i Visual Studio:

   
(*) Core C# and .NET, Stephen C. Perry

Opgaver til mandag om filer

1. Lav et windows program, der indlæser en tekstfil med nogle navne og indsætter dem i en listbox

2. lav et windows-program, der indeholder nogle personfelter og en opret-knap. Når der trykkes på opretknappen så skal personfelternes værdier tilføjes til en tekstfil, som en linie med felterne adskilt af semikolon.

3. Lav et program (Console / Windows ) der tæller antallet af linier i en tekstfil. Udvid så det også tæller antallet af ord evt. også den samlede længde af ordene.

4. lav et windows program med to felter søgord og erstatord, der kan læse en tekstfil og erstatte alle steder hvor søgeord forekommer med erstatord og udskrive til en ny tekstfil. Der behandles en linie fra indata af gangen, hvorefter der udskrives.

5. lav et windows-program med en personklasse, svarende til felterne i opgave 2. udviden med en ToString metode. Programmet skal læse persondataene fra tekstfilen (en linie pr. person) og så oprette et person-objekt for hver linie med data fra denne, og herefter indsætte personerne i en listbox.

Opgaver til torsdag om filsystemer

1. Lav et windows program, der med brug af FileInfo klassen kan vise informationer om en fil (path indtastes i en tekstbox eller findes med OpenFileDialog). Prøv at ændre egeskaber på filen ved at højreklikke og sammenlign med dit program.

2. Lav et windows program, der med brug af DirectoryInfo kan vise informationer om et katalog / en mappe (path til katalog  indtastes i en tekstbox). Udvid med at udskrive en liste over filer i kataloget. DirectoryInfo objektet har en property, der kan give et array med FileInfo

3. Redegør for forskellen mellem katalogstrukturen/filnavne (med fuld path) i windows (FAT.. / NTFS) og i linux ext2/2xt3).
Hvordan kan man i et linux komandobox få en oversigt over filer og hvilke attributter er der til disse. Hvilke kendetegn har programfiler, der kan startes direkte i henholdsvis windows og i linux. Hvis du sammeligner strukturen i stifinderen i windows, hvordan ser den så ud i forhold til hvis du ser den fra en kommandobox?

4. lav en mappe i windows og under egenskaber og prøv at ændre dens rettigheder, herunder del. Hvad sker der hvis mappel bliver skrivebeskyttet og du laver en undermappe. Hvad hvis undermappen er oprettet inden mappe n skrivebeskyttes.

5. Lav et windowsprogram, der kan udskrive information om din CPU.
Start i design-mode på din gui-form.
Åben under View-menuen "Server Explorer"
Under "Server" finder du først din computer, herefter under "Management Classes"-> "Processors" din CPU
Træk den ind på din Form og du får nu et kontrol-objekt, som du kan bruge til at få informationer om din CPU ligesom du bruger en ListBox og andre kontroller, idet der selvfølgelig er nogle andre properties på CPU'en