DM10x - 3. semesterUgeplan for Softwarearkitektur og Distribuerede ProgrammerTema: Tråde og socket - Gå til uge: 33, 34, 35, 36 |
Sidst ændret: 2011.12.25
Uge 33 | |||
Dag | Tidspunkt | Emne | Litteratur / Opgaver |
Torsdag | 08:30 -
|
Netværksprogrammering med Socket Eksempel på socket-klient og socket-server
Aftestning
af server kan starte med brug af Telnet der også kan køres fra
komandoprompt |
.Net app(**) kap 4.4
(Socket)
Slides om socket part 1 (nokn)
Eksempel på simpel socket server og klient Programmer til test af
socketforbindelser: |
- 14:00 | Opgaveløsning (socket opgave 1-4) | Opgaver med socket server og socket-klient | |
Fredag | 08:30 - | Gennemgang af opgave 1+2 fra
sidste gang Delegater (intro) Trådning (intro) Kodeeksempel på trådet server |
C# Network
programming
s. 354-358 (Socket) Core C# (*) kap 13.1 (Thread intro) Core C#(*) kap 3.7 om Delegates (se Fronter) C# to the point (***) kap 11.1om Delegates (se Fronter) .Net app(**) kap 4.3.1-4.3.3 (Thread)
Slides om socket part 2 multitrådet (nokn)
Trådeksempel1 (ikke inddraget fredag) |
- 10:00 | Opgaveløsning (socket opgave 4-5) | Opgaver med socket server og socket-klient |
Afleveringsopgaver (obligatoriske) denne uge: Socket-opgave 5 |
(*) Core C# and .NET,
Stephen C. Perry - se Fronter (**) .Net Application Development with C#..., Hanspeter Mössenböck - se Fronter (***) C# To the point -.., Hanspeter Mössenböck - - se Fronter |
Uge 34 - trådopgaver i samarbejde med CDS | |||
Dag | Tidspunkt | Emne | Litteratur / Opgaver |
Tirsdag | 08:30 -
|
Gennemgang af socket-opgave 3-5 fra
sidste gang
Kodeeksempler Synkronisering af tråde Design med tråde |
.Net app(**) kap 4.3.1-4.3.3 (Thread) Core C# (*) kap 13.1 (Thread intro) Core C# (*) kap 13.4 (Thread Synchronization) Slides om tråde og synkronisering
Trådeksempel1 - primitiv enkel tråd
Trådeksempel5_Sync - synkronisering - primitiv uden resource-monitor
Den designmæssige gode løsning:
Supplement fra internettet: evt. alternativ /uddybende om tråde - Core C#(*) kap 13.3 (Working with Thread) |
- 14:00 | Opgaveløsning | Trådopgaver (1-6) | |
Torsdag | 08:30 -
|
Design af tråde samt socket-programmering Oplæg til chat-server Lidt om protokoller (vi ser kort på http) |
SocketEchoComandBased (eksempler med opdeling i kommunikation og
behandling) Indeholder tekstfil med indholdsbeskrivelse og PowerPoint Medtages: - SocketServerCmdBasedStatic - SocketServerCmdConnected - SocketServerCmdDisconnected_V01 Programmer til test af
socketforbindelser: |
- 14:00 | Opgaveløsning | Trådopgaver (1-6) | |
Fredag | 08:30 - 10:00
|
Torsdagens emner fortsat |
|
Afleveringsopgaver (obligatoriske) denne uge: Der skal afleveres en status på trådopgaver (hvor langt er du nået / er der problemer) |
(*) Core C# and .NET,
Stephen C. Perry - se Fronter (**) .Net Application Development with C#..., Hanspeter Mössenböck - se Fronter (***) C# To the point -.., Hanspeter Mössenböck - - se Fronter |
Uge 35 - foreløbig plan - bemærk denne uge SDP om onsdagen | |||
Dag | Tidspunkt | Emne | Litteratur / Opgaver |
Tirsdag | 08:30 -
|
Synkronisering af tråde Trådsikre klasser, monitor Eksempler på synkronisering Producer-Consumer mønsteret (push - pull)
Flere eksempler på brug af Producer-Consumer mønsteret (push - pull) |
.Net app(**) kap 4.3.1-4.3.3 (Thread) Core C# (*) kap 13.1 (Thread intro) Core C# (*) kap 13.4 (Thread Synchronization) Slides om tråde og synkronisering
Trådeksempel_Parkeringshus_NO_pulseall
|
- 14:00 | Opgaveløsning (tråd opgave 7) (spørgsmål 1 er obligatorisk) |
Trådopgaver (7-8) Til opgaver kan du tage udgangspunkt i følgende: Trådeksempel_Parkeringshus_wait_notify
|
|
Onsdag | 08:30 -
|
Observer mønster - delegate / event Om tråde og GUI - Invoke |
C# to the point (***) kap 11.1 om
delegater C#(*) kap 3.7 (Delegater)
Delegater Ekstra læsestof fra wikipedia
(publish/subscribe): |
- 12:00 |
Opgaveløsning (tråd opgave 9 obligatoriske)
|
Opgave 9 - termometer med alarm-event | |
Fredag | 08:30 - | Opsamling på opgaver Observer
mønster Om tråde og GUI - Invoke
|
ObserverPattern_CascadeEvent |
- 12:00 | Opgaveløsning (9 og 10)
- begge er obligatoriske Hvis du har problemer med opgave 9, kan du evt. se en trinvis udvikling her: http://bjoerks.net/datamatiker/Csharp/Modeller/TraadTermoMeterMedAlarn_V01_V05.zip Men husk at løse opgaven selv, selv om du har kigget i en løsning. |
Opgave 9 - termometer med alarm-event Opgave 10 med øl-sodavand soteringsanlæg Til opgave 10 er følgende også relevant (du kan "stjæle" bufferklasse her) TrådEksempel9_ProducerConsumer_Buffer |
Afleveringsopgaver (obligatoriske) denne uge: Trådopgave 7 spørgsmål 1, Opgave 9 (termometer-alarm-monitor) |
(*) Core C# and .NET,
Stephen C. Perry - se Fronter (**) .Net Application Development with C#..., Hanspeter Mössenböck - se Fronter (***) C# To the point -.., Hanspeter Mössenböck - - se Fronter |
Uge 36 | |||
Dag | Tidspunkt | Emne | Litteratur / Opgaver |
Tirsdag | 08:30 -
|
Mere design med tråde: - (simulering af ) fysiske processer - buffer - producer, consumer - splitter, sorter - løs kobling med observer, eventbaseret overvågning Socket-chatserver design: Broadcasting
|
Opgave 10 med øl-sodavand soteringsanlæg ObserverPattern_Parkeringshus
Eksempel på design-muligheder:
|
- 14:00 | Opgaveløsning (10)
- obligatorisk |
Opgave 10 med øl-sodavand soteringsanlæg Til opgave 10 er følgende også relevant (du kan "stjæle" bufferklasse her) TrådEksempel9_ProducerConsumer_Buffer |
|
Torsdag | 08:30 -
|
Foreløbig plan opsamling på opgaver Proxy-mønsteret
Diskussion af ideer og design af chatserver med brug af producer-consumer mønster med buffer og mulighed for ikke at holde socket åben under hele chat'en
Løsning af trådopgave 7.1 P-HUS:
Producer-Consumer & Guarded Suspention |
Slides om Proxy mønster
|
- 14:00 | Opgaveløsning | se tirsdag | |
Fredag | 08:30 - 10:00
|
Foreløbig plan Opsamling på emner til nu Opstart af obligatorisk tværfagligt projekt |
|
Afleveringsopgaver (obligatoriske) denne uge: Opgave 10 (øl-vand sorterings simulering) |
(*) Core C# and .NET,
Stephen C. Perry - se Fronter (**) .Net Application Development with C#..., Hanspeter Mössenböck - se Fronter (***) C# To the point -.., Hanspeter Mössenböck - - se Fronter |
Løsning af Opgave 9 - termometer med alarm-event (Monitor og observer pattern med delegater)
-
Vs_Termometer_Monitor_Observer_Solution_20110909.zip |