Craig's .NET Tips
Learn the .NET Framework
This Framework provides the underlying workings for all .NET languages.
Functionality comes in a "class library", which is a set
of classes and methods. The main class library is held in the "System
namespace". For example, if you want to perform file input/output,
simply use the System.IO namespace. If you want to create multi-threaded
applications, use the System.Threading namespace. So, when people
tell you that VB.NET supports true free threading, it does, as long
as you're using the System class library.
Upgrade Small Projects First
While VB.NET includes a wizard to help you upgrade VB6 projects,
start with small projects first. The wizard cannot handle every
case, and if you start with a small project, you will likely have
a much lower number of items you need to fix yourself. In fact,
you may be able to identify certain coding elements in your code
that cause problems for the upgrade wizard, and start fixing them
before you run the project through the wizard, making the upgrade
more successful.
Expose Functionality with Web Services
Distributing applications is often not a fun activity, but .NET
makes that easier. One of the simplest ways to distribute applications
is to build a lot of the functionality into Web services, which
can be called with just HTTP. You don't have to rely on COM, DCOM,
or any other transport mechanism. Instead, use the standards-based
HTTP to make XML calls to a Web service, which will respond with
an XML stream containing the results. However, the XML is hidden
from you, so you can continue to program with Web services just
as if they were local components.
Use ADO.NET to Boost Scalability
One of my favorite tricks for huge performance gains was to use
disconnected recordsets with ADO. Now, ADO.NET is based on a disconnected
model. This means that you can have a far greater number of users,
while the number of connections to your database server is reduced
to a bare minimum. Moving from one record to another doesn't require
a trip back to the database, but instead walks through the records
held in memory. ADO.NET takes this further by allowing you to create
a database schema in memory, with tables and relationships-which
means you could actually cache subsets of your database, or the
entire database, in memory, and allow access to the records without
a connection to the database server.