Feb
21
Written by:
Andy Hock
2/21/2007 4:56 PM
Like many programmers, I've dealt with so many programming languages, architectures, project development paradigms and such, that I can't cram everything into my head at all times. My resolution to this problem uses Microsoft Office's OneNote.
I have a OneNote notebook with lots of tabs across the top, for things like 'Patterns', 'C# Code', 'Javascript', 'CSS Cross-browser', 'SQL', etc. And for each subject, I have lots of right-side tabs for different snippets of code, tutorials and such, so if I ever need to recall something, it's seconds away from jogging my memory.
I thought I'd share some of the links I've found for understanding Polymorphism in C# and Java (I came from a Java world in 2000 when .NET first came out, so it always helps me to relate comparisons of C# to Java). Also, I keep a handy detailed explanation and code examples of a number of Patterns, so if I'm designing something new, while I know the pattern I'll need, I can just copy and paste the code stubs and rename the classes, to get started on that project or piece of the project.
Here are some links for what I think are well-written tutorials on polymorphism and patterns:
- An excellent explanation of polymorphism in C# and how it differs from Java.
- Here's a list of tutorials about a number of patterns, like the Singleton, Strategy, Command, Facade, Observer, MVC and others. It uses Java, but you can get a very good picture of how they work and when they're handy.
- An excellent Singleton tutorial with C# code included, including thread-safe issues.
- Likewise, an excellent Model-View-Contnroller (MVC) tutorial with C# code included, including a sample project.
- And, a C# Tutorial on Factory, Abstract Factory, Prototype and Builderwith C# code included. The tutorial is absolutely excellent for those that want to understand Factories, and the source code is what I use to stub new Factories in projects.
Tags: