Zealand  => Peter Levinsky  => Advanced Software Construction - 4.sem   => Semester plan 
Semester Plan
Advanced Software Construction 4.semester
Updated :  2020-08-24

Preliminary plan for ''Elective: Advanced Software Construction" 4th semester autumn 2020
changes can occur

WeekNo
Date
Literature/reading
Bold : Need to read, Italic : Read light, Italic-green: Additional-reading
Exercises / Solutions
https://github.com/orgs/RO20E-VF-ASWC
Week 35
24+27/8

Introduction to this elective
Design Patterns - template -- C#Note chap OOProg3 p.1-17 + 43-47
XML -- https://www.w3schools.com/xml/default.asp
XML schema XSD -- https://www.w3schools.com/xml/xml_schema.asp
Read XML file in C# -- https://support.microsoft.com/da-dk/help/307548/how-to-read-xml-from-a-file-by-using-visual-c | https://www.c-sharpcorner.com/UploadFile/167ad2/read-xml-file-using-xml-reader-in-C-Sharp/

Slides: XML     |    TRACING
 

MakeAnAbstractTCPServer-part1
MakeAnAbstractTCPServer-part2

Week 36
31/8+3/9

Thursday the 3rd september is video-class - use zoom

Parallelism / synchronous mechanism
Moodle - Note -> Interprocess Communication   
C#Note Prog04 pp.1-21
Threads in C# :
Basic: http://www.albahari.com/threading/
Basic sync: http://www.albahari.com/threading/part2.aspx
Using thread: http://www.albahari.com/threading/part3.aspx
Advanced Threading: http://www.albahari.com/threading/part4.aspx
Parallel: http://www.albahari.com/threading/part5.aspx

C#Exercises Prog.4.1-Prog.4.4

Brewery

Week 37
7+10/9

Regular expressions
Overall view Wikipeia: https://en.wikipedia.org/wiki/Regular_expression
nice presentation (though not C#) https://cs.lmu.edu/~ray/notes/regex/

Some C# Regular expressions - quick reference: https://docs.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-language-quick-reference
microsoft QuickReference Card https://download.microsoft.com/download/D/2/4/D240EBF6-A9BA-4E4F-A63F-AEB6DA0B921C/Regular%20expressions%20quick%20reference.pdf
C# How to use: https://www.c-sharpcorner.com/article/c-sharp-regex-examples/
MS ref. Regex: https://docs.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.regex?view=netcore-3.1

RegularExpression#1

RegularExpression#2

Week 38
14+17/9

Thursday the 17th september is video-class - use zoom

More synchronous mechanism / State machine
Theory: https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-01sc-introduction-to-electrical-engineering-and-computer-science-i-spring-2011/unit-1-software-engineering/state-machines/MIT6_01SCS11_chap04.pdf p.117-123
Wiki: https://en.wikipedia.org/wiki/Finite-state_machine
Fun intruduction: https://www.c-sharpcorner.com/article/understanding-state-design-pattern-by-implementing-finite-state/
State Pattern: https://www.dofactory.com/net/state-design-pattern
Finite State Machines: https://fabioutzig.com/posts/table-driven-state-machines/
More State Machine: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.94.2987&rep=rep1&type=pdf

State-machines-snake

Week 39
21/9

Monday the 21stseptember is video-class - use zoom

Reflection -> metadata of objects at run-time
C#Note OOProg04 pp.23-28
C#Note OOProg4 pp.18-22

MS references
Object.GetType: https://docs.microsoft.com/en-us/dotnet/api/system.object.gettype?view=netcore-3.0
Type.GetType: https://docs.microsoft.com/en-us/dotnet/api/system.type.gettype?view=netcore-3.0
Reflection: https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/reflection
C# Reflection Examples: https://www.dotnetperls.com/reflection


C#Exercises OOP.4.4

MyOwnJsonConverter

C#Exercises OOP.4.3

 

Week 40
28/9+1/10
Friday the 2nd october is video-class - use zoom

SOLID
C#Note Solid pp.1-26 + 42-48

Quality factors ISO 25010
Slides SOLID

Friday: All day exercises

C#Exercises SOLID.1-SOLID.2

Obligatorisk Aktivitet

Week 41
5+8/10

Monday the 5th october And Tursday the 8th is video-class - use zoom

Framework for Simple games
C#Note Solid pp.27-41

Iterations, LINQ, Classes, interfaces, abstract, static, Overload/overwrite + Operator overload
C# Note: Prog03, s.30-48 + OOProg04, s.3-17
Slides: Linq+operator.pdf

C#Exercises SOLID.3-SOLID.4

Warm up straight Linq
C#Exercises PRO.3.7 - PRO.3.8
Advanced LINQ
C#Exercises PRO.3.11
Operator Overload
C#Exercises OOP.4.1, OOP.4.2, OOP.4.5

Week 42


Efterårsferie
 

Efterårsferie

Week 43
19+22/10

Framework for Simple games

C#Note Design Patterns – Creational Patterns, Structural Patterns, Behavioral Patterns OOProg3 pp.18-58
C# Site om Design Patterns: https://www.dofactory.com/net/design-patterns
Wiki site om DEsign Pattern: https://en.wikipedia.org/wiki/Software_design_pattern

Slides: designPattern

C#Exercises OOP3.1, OOP3.2, OOP3.3, OOP3.7, OOP3.9

C#Exercises OOP3.4, OOP3.5, OOP3.6, OOP3.8
Pizza with design Patterns

Week 44
26+29/10

Framework for Simple games
C#Note Design Patterns – Creational Patterns, Structural Patterns, Behavioral Patterns OOProg3 pp.18-58
C# Site om Design Patterns: https://www.dofactory.com/net/design-patterns
Wiki site om DEsign Pattern: https://en.wikipedia.org/wiki/Software_design_pattern

Slides: designPattern

Refactorering

 

Ideas for Synopsis i this course

 

Week 45
2+5/11

Framework for Simple games
Working with mandatory assignment - including supervision and help

 

Week 46
9+12/11

Framework for Simple games
Working with mandatory assignment - including supervision and help
Presentation of the mandatory assignment

Aflevere/præsentere Obligatorisk aktivitet

Se tidspunkter for præsentation her:

https://docs.google.com/spreadsheets/d/11enhvLOTdU4ehvNLXv_H8pkgGq23AWEAByZZgaPnSJY/edit?usp=sharing

Week 47
16+19/11

Individual study - Synopsis Video supervision -> Synopsis vejledning :  https://docs.google.com/spreadsheets/d/1yKpSo1hs7xkd9vi5gLCpVimMkJ3Kx-NqLzOFYXH1PuM/edit#gid=0

Ideas for Synopsis

Individual study - Synopsis

Week 48
23+26/11

Individual study - Synopsis Video supervision

Individual study - Synopsis

Week 49
30/11+3/12

Individual study - Synopsis Video supervision

Individual study - Synopsis

Week 50
7+10+11/12

Individual study - Synopsis Video supervision

Individual study - Synopsis

Week 51
14+16/12

Individual study - Synopsis Video supervision

Individual study - Synopsis

Handin Synopsis into wiseflow no later than friday the 18th

Week 52-03
21/12-22/1

Exam:

Exam schedule - See Wiseflow