Web Resourses:
UML
XML, HTML
Code Project
Microsoft Developer's Network
DevelopMentor
XML
Sells Brothers
Windows Developer's Journal
WindowsClient.net
DotNetJunkies
dotnet quickstart tutorials
C# Corner
Mono Project
Performance Counters
Content:
This lecture provides help for Project #2. We discuss the issues with reference type payloads, addressing those
by deep cloning (where that is possible). One focus today is on providing a Payload Wrapper that provides
cloning, ToString, and XML services for payloads.
- The Syllabus describes topics to be covered, reading material for you to digest before coming to class, and due dates for the assigned projects.
-
Project Helpers:
Project #1, Project #2
Code from Visual Studio Help Session last Friday - new version of Project2Starter
We will spend time discussing Project #2. The focus of this discussion will be:- Commenting on the OCD hints provided in the NoSql Blog.
- Wrapping payloads to provide services for managing data with deep clones and writing XML. These services are not natively provided by payload types. You will find a fairly complete PayLoadWrapper in the Project2Starter code in Project2Help15.
- Design and implementation for Query processing - LambdaDemo will be especially useful.
- Sharding
- ElementFactory - just a few comments here.
- Timer demo - useful for Persistance scheduling.
-
XML Tutorials
-
XML Presentations and Demo Code:
-
LINQ Presentation and Demos:
IEnumerable<T> interface - MSDN link
IQueryable<T> interface - MSDN link
XDocument class - MSDN Extension Methods - used by LINQ
Lambda Capture LINQ Presentation, pptx
LINQ Query Examples from presentation LINQ Queries on Collections
LINQ Queries
LINQ to XML
Create XML with XDocument
LINQ Bindings
LINQ to SQL Example -
LINQ Tutorials:
-
LINQ to SQL Tutorials:
-
Uses for XML
- Small databases - bug trackers, requirements models, project data
- Representations for graphical data in Computer-Aided Design systems
- Test data - acquiring structured data from a file, used to drive test procedures
- Persistent data - save data generated by an analysis program for further analysis by other programs
- Messaging - constructing structured messages for transmission over sockets or remoting channels
- Evaluating code projects - Cyclomatic Complexity, Size, Manual and Maintenance Pages, demonstration of requirements
-
XSLT Tutorials
XSLT is a transformation language, usually used to transform XML into HTML. We will not discuss XSLT nor use it in this course, but you should know that it exists and may find need for it in your professional work. htmlLite - basics, zvon - complete tutorial, W3C - thorough and formal, XSL Tricks, TopXML, Michael Kay's overview, Google XSL links - Mono Project
-
Software Architecture:
-
Lecture Take-aways:
The most important things we discussed are:- Wrapping payloads to provide services for cloning and writing XML
- XML syntax and parse tree structure