Architecting Desktop Applications with 2.0 – 15 Free Video Tutorials

found a good way“Architecting Modern Desktop Applications in .NET” is a 15-part 25+ hour free video tutorial series that is appropriate for the intermediate or advanced Microsoft Visual Studio .NET developer. The presenter is Joe Hummel. Some of the topics covered include: , , , net webbrowser.

Joe Hummel is an associate professor of computer science at Lake Forest College, a Microsoft Visual Studio .NET trainer for DevelopMentor, and an avid sailor. Joe has a Ph.D. in computer science from the University of California, Irvine, and he has written a book with Ted Pattison that is entitled “Building Applications and Components with Visual Basic .NET.”

Here is where you can download the source code and labs for this video series.

Creative Commons License photo credit: slashcrisis

 

Architecting Desktop Applications with 2.0

 

1. Smart Clients and N-tier Design
Key Concepts:

  • smart client development
  • N-tier design

112 minutes 8/23/05

2. Design Patterns for GUI Applications
Key Concepts:

    Common design patterns for sophisticated graphical user interface-based applications include:

  • the Model-View-Controller pattern
  • the User Interface Process block from Microsoft

111 minutes 9/06/2005

3. Creating Dynamic and Configurable Applications
Key Concepts:

  • The architecture and design of dynamic and configurable applications
  • proper use of .NET configuration files
  • storing connection strings and user settings
  • the Microsoft patterns & practices Enterprise Library Configuration Application Block
  • building applications whose user interface is dynamically configurable
  • .

96 minutes 9/27/05

4. Architecting a Secure Desktop Application
Key Concepts:

  • Designing secure desktop applications
  • authentication
  • authorization
  • securing configuration and user settings
  • the Microsoft patterns & practices Enterprise Library Security Application Block

. 113 minutes 10/11/05

5. Designing the Business Tier
Key Concepts:

  • Designing the business tier
  • Component-based, Scalable, Logical Architecture.NET
  • an open-source programming framework
  • Object Role Modeling

107 minutes 10/25/05

6. Designing the Data Access Tier
Key Concepts:

  • design of the Data Access tier
  • Microsoft patterns & practices Data Access Application Block
  • new features in Microsoft ADO.NET 2.0
  • how to use Object Role Modeling tools to create data access tiers automatically

106 minutes 11/08/05

7. Best Practices for Developing N-Tier Applications
Key Concepts:

  • Best practices for developing N-tier applications
  • exception handling
  • logging
  • instrumentation and documentation
  • Instrumentation Application Blocks from the Microsoft patterns & practices team

111 minutes 11/22/05

8. Turning Tiers into Components
Key Concepts:

  • Design and creation of .NET components
  • Strong naming
  • versioning
  • pluggable components

114 minutes 12/6/05

9. Build, Build, Build, Test, Test, Test
Key Concepts:

  • How to take advantage of the build, analysis and testing tools available in Microsoft Visual Studio 2005

99 minutes 12/20/05

10. Multithreading for Performance and Responsiveness
Key Concepts:

  • the theory behind multithreading
  • ways to use multithreading safely within your applications

118 minutes 1/11/06

11. Designing Distributed Applications Around Remote Access
Key Concepts:

  • the use of .NET remote access to create true smart client applications
  • the various ways to configure remote access
  • how remote access may change your class designs
  • marshal-by-value objects versus marshal-by-reference objects
  • caching

111 minutes 1/25/07

12. Designing Distributed Applications Around Web Services
Key Concepts:

  • The use of Web services as an alternative to remote access in creating true smart client applications
  • the pros and cons of Web services
  • marshal-by-value objects versus marshal-by-reference objects
  • the future of Web services with the Microsoft Windows Communication Foundation set of technologies for connected applications

119 minutes 2/8/06

13. Securing a Distributed Application
Key Concepts:

  • Security issues raised by distributed applications
  • authentication
  • authorization
  • encryption

83 minutes 2/22/06

14. ClickOnce Deployment
Key Concepts:

  • Ins and outs of ClickOnce
  • the no-touch deployment model in .NET 2.0

90 minutes 3/8/06

15. Learning from Agile Development
Key Concepts:

    Some of the principles behind the agile software development process include:

  • customer-driven design
  • frequent builds
  • unit testing
  • simplicity in design

60 minutes 3/22/06