|
CMAP Visual Studio 2008 InstallFest |
|
|
By gmon on
1/5/2008 4:20 PM
|
|
|
This week I went to the CMAP Visual Studio 2008 InstallFest and got myself a free copy of Visual Studio 2008 Professional and a cool Visual Studio tee shirt. The event featured Microsoft Developer Evangelist G. Andrew Duthie and a presentation by Scott Allen on the The ASP.NET MVC (Model/View/Controller) framework. I haven't done any ASP.NET development so the presentation on the new framework was a little over my head but this new framework was developed to addresss the desire of many web developers for ASP.NET to support a Model/View/Controller methodology for developing web applications. This methodology is good in that it explicitly helps supports a clean separation of concerns which makes it particularly good for test driven development.
There was plenty of good food (pasta, lasagna, meatballs, and salad), drinks (soda, coffee, and water), deserts (cookies) at the event. Unfortunately, I had to leave early so I couldn't stay around for the raffle ...
|
 |
|
|
More...
|
|
|
XNA Game Studio 2.0 is now available |
|
|
By gmon on
12/16/2007 11:09 PM
|
|
|
Microsoft has released XNA Game Studio 2.0. The prior v1.0 only worked with Visual C# 2005 Express Edition. This new version now adds support for the following configurations:
- Visual Studio 2005 Standard Edition
- Visual Studio 2005 Professional Edition
- Visual Studio 2005 Tools for the Microsoft Office System
- Visual Studio 2005 Team Edition for Software Architects
- Visual Studio 2005 Team Edition for Software Developers
- Visual Studio 2005 Team Edition for Software Testers
- Visual Studio 2005 Team Edition for Database Professionals
- Visual Studio 2005 Team Suite
Unfortunately, it doesn't support the newly release Visual Studio 2008 yet but I've heard this might be done through a refresh like th ...
|
 |
|
|
More...
|
|
|
|
The .NET Settings Architecture |
|
|
By gmon on
8/26/2007 3:51 AM
|
|
|
|
Saving
and restoring user preferences and settings is a common need with
many applications. For example, many applications allow the user to
save user preferences such as the position and size of opened
windows, recently used files, etc. and allow the restoration of these
settings the next time the application is used. Luckily, the .NET
Framework 2.0 provides a really nice and easy way to do this.
To
illustrate this, let’s consider a simple C# Windows Application that
allows the user to save off and persist a text string between
sessions.
|
 |
|
|
More...
|
|
|
A Great Resource For .NET Training |
|
|
By gmon on
7/28/2007 1:51 PM
|
|
|
I just wanted to share a great resource for learning .NET programming. It's a site called Learn Visual Studio .NET. They offer great little videos that teach you aspects of programming in .NET. After entering the workplace, most of my learning is self taught -- I would either read books or look up how to do something from doing a Google search.
But sometimes I miss the classic "school way" of learning -- where you would listen to a lecturer as he/she explains a concept or show you how to do something. These videos are just like sitting in a classroom where a lecturer explains concepts and shows you how to do something by working on a computer that is displayed on an overhead projector. The presentation of the material is great and I find myself learning the material more quickly than if I had read about it on a website. You have to pay to ac ...
|
 |
|
|
More...
|
|
|
Managed Wrappers |
|
|
By gmon on
6/17/2007 7:10 AM
|
|
|
Let’s recap what we know about interoperating with legacy code from .NET. We basically have two methods.
If the legacy code is in the form of a DLL, we can use P/Invoke from any .NET language. We can also use C++ Interop if we are using C++/CLI to access this DLL.
If the legacy code is in the form of a C/C++ source file, then we can use C++ Interop to access it.
No matter which method we choose to interoperate with legacy code, we should consider wrapping up our work into a package that will be useable from any of the .NET languages. This technique involves creating a managed wrapper that acts as a proxy for the legacy native code.
Once this is done, the legacy code will then be available to any other .NET language as a .NET class. So, we tradeoff some more work in the beginning for less work further down the line.
For example, suppose our legacy code is already in the form o ...
|
 |
|
|
More...
|
|
|
Value Types, Reference Types, Boxing and Unboxing |
|
|
By gmon on
6/8/2007 2:13 AM
|
|
|
|
Most
of the .NET literature I've come across reads somewhat easily because
it is so similar to Java and I had already taken several Java
classes.
But
one of the things that I find confusing in the .NET literature is
their talk of boxing and unboxing and their emphasis on Value Types
and Reference Types. I couldn't remember
a similar topic in Java. What I do remember from Java was that ...
|
 |
|
|
More...
|
|
|
Using C++ Interop to access Legacy code |
|
|
By gmon on
6/2/2007 11:42 PM
|
|
|
|
C++
Interop, also known as “It Just Works”, is only available if you
are using C++/CLI. It is my preferred way of accessing legacy C/C++
code. The basic idea is that things should work as they have always
worked before .NET came along. In other words, if you want to access
functions within a DLL from C++/CLI, you perform the same steps as if
you were using Visual C++ 6.0.
To
illustrate how this is done, suppose you have access to a legacy
library packaged in a DLL called MathDLL.dll. This is the same
library that I used earlier to illustrate how to use P/Invoke to
access functions in a DLL.
Now
suppose you use Visual Studio 2005 to create a ne ...
|
 |
|
|
More...
|
|
|
Accessing Legacy Code with P/Invoke |
|
|
By gmon on
5/19/2007 6:21 PM
|
|
|
|
In 2002, Microsoft introduced a new programming framework called the .NET Framework. Programs written in any .NET language are compiled to an intermediate code called the Microsoft Intermediate Language (MSIL) and this intermediate code is run on top of something called the Common Language Runtime (CLR). The .NET Framework also includes a large set of prewritten classes called the Framework Class Library.
The Microsoft Intermediate Language, C ...
|
 |
|
|
More...
|
|