In this context, learning Windows programming with the .NET Framework is all
about three criteria:
1.) the language used to write the code
2.) the .NET framework itself (DNF)
3.) the ObjectARX framework which exposes its APIs to the DNF.
The DNF 2.0 has more than 65,000 classes. The DNF 3.0 just being released
even more. Its not going to be like VBA's lack of robustness which will
frustrate you but your ability to design and code using Object Oriented
Programming (OOP).
I presume you understand convergence and have no argument accepting the
assertion that web applications are becoming more like Windows applications
and Windows applications are becoming more like web applications. I presume
you have heard of or understand what Microsoft calls SmartClient
development? Briefly, SmartClients are Windows applications that utilize the
IP stack to integrate with services running on the web.
Note within the context of the DNF we refer to Windows application
development as "Windows forms" and ASP.NET web development as "Web forms."
I've used VBS/ASP and VBA myself until I had an epiphany and came to
understand and accept the assertions I've just made. So as my focus was
primarily web development I learned C# noting learning OOP as applied to the
DNF is first and foremost a matter of deciding which language to use for
server-side code. I chose C# as opposed to VB.NET for the same pragmatic
reasons I am suggesting you consider.
All competent web developers must master JavaScript for client-side code.
JavaScript is derived from C. Thus, JavaScript, C# and Java itself all have
identical syntax and nearly identical grammar. You can learn three languages
for the price of one. Cascading Style Sheets (CSS) are used to style web
pages and web content and its syntax is also derived from C. So are many
other languages.
C++ was obviously also derived from C and remains useful and in demand but
it is C# and Java which are considered to be modern languages and are widely
used by enterprise developers. A "modern language" is briefly described as
one that compiles to managed code, e.g. has memory management features. C++
is unmanaged code which served well during the era of COM Basically,
managed code provides greater economy than unmanaged code. Managed code
trades off slight performance degradation in return for elegance, stability,
and greater economy during the life cycle of the application. I don't want
to get too deep into this tonight as it will only attract nitpickers. 😉
So, let's conclude. The web and the desktop are becoming indistinguishable
from one another. Many Windows form developers are becoming conversant as
web form developers and many web form developers are becoming conversant as
Windows form developers.
Learn the C# language first using a textbook from Deitel & Deitel. Then use
C# to learn the principles of OOP as implemented when using the DNF. The
most challenging will be the mastery of OOP.
There's a roadmap that will serve you well.
<%= Clinton Gallagher
NET csgallagher AT metromilwaukee.com
URL http://clintongallagher.metromilwaukee.com/
"Tony Burba" wrote in message
news:5361317@discussion.autodesk.com...
I hope some of you will take the time to give me some advice.
I've been doing Lisp programing for about 15 years and VBA for about 6
years, developing many very complex applications particularly involving
links between Autocad and databases.
We're slowly implementing ADT2007, and I can see a vast number of potential
custom applications for ADT, but I'm continually frustrated by the limited
exposure of properties and methods in VBA. I gather from passing mentions in
other discussion groups that .net lets you do more stuff than the older
interfaces.
My questions:
1. Is .Net enough better than VBA to justify what looks like a pretty
hefty learning curve, plus perhaps rewriting tens of thousands of lines of
code? What kinds of things can one do in .net that are difficult or
impossible in VBA (I rarely do Lisp anymore, except where I need command
interface)?
2. Is .net a huge jump for an advanced VBA programmer? In scanning this
group, a lot of the code samples look both very similar to and very
different from VBA. In capsule form, what's the essential difference in the
structure and "philosophy" of the programs?
3. If I'm going to make a leap anyway, would I be better off learning C++
and ARX?
4. How would I get started?
I'm not afraid of learning or work, even at my advanced age, but I know how
difficult it can be to get comfortable in a new programing environment, and
I'd like to know if it's worth it.
Thanks for any responses, and I may be spending more time with you all soon.
Tony Burba
Design Technology Director
Hord Coplan Macht Inc.
Baltimore MD