Fog Creek Software
Discussion Board

do i need to learn the language before .net

I am just about to graduate from college with a CS degree, but i'd say about 50% of my programming coursework focuses on mainframe technologies.  So far, to put it bluntly, the job market looks pretty weak for entry level in that department.  So i have some experience using VB, and ASP, along with C, C++, javascript, etc.  I am about to pick up the .net professional edition  to expand my skillbase, but one of the things i'm kind of in the dark about is at what level do you need to understand the languages before understanding the .net framework?  For example, should i really have a solid understanding of VB or ASP before attempting to learn .net?  Does the syntax and methodology totally change?  Maybe the problem is my lack of understanding of what .net actually offers on top of the languages prefixed before it.  Any advice?

Friday, April 23, 2004

"...I am about to pick up the .net professional edition .."

I assume you're aware that MS often has discounted Academic versions. If not, now you are.

Mr. Analogy
Friday, April 23, 2004

The languages themselves are pretty simple - if you know some C++ and Java, C# will seem straightforward, with a few gotchas. Similarly VB.Net and VB are mostly similar. The thing that takes learning is the .NET framework(s) inside which these languages operate. If you don't know what the "normal" .NET way is to do something, you can end up writing a lot of unnecessary code to reinvent the wheel, instead of just calling System.UsefulStuff.HandyClass.DoWhatIWanted()

Dave Hallett
Friday, April 23, 2004

I don't know about ASP and ASP.NET and web software, but I know about C++ and C# and desktop software.

My advice is to read the C# reference to learn the language, before you start on the framework.

Don't worry: C# is very easy to learn if you know C++.

Christopher Wells
Friday, April 23, 2004

I think the question of the OP is misplaced.  In my view, you may as well be asking if it is a pre-requistie to learn Assembly prior to learning about common computer architectures.  The two definately interact, but knowledge of one will not preclude you from learning about the other.

In the case mentioned, learning about the .Net framework is completely irrelevant of knowing what all of the framework libraries are, or how you do type checked function passing in C#.

You can easily learn about the CLR, CTS, CTL, IDL, etc. without knowing how to program thing 1 in C#, just like you can easily learn about cache's, system buses, memory systems, etc. of a computer without knowing how to program thing 1 in Assembly.

Friday, April 23, 2004

Check out Joe Hummels webcasts.  The clearest, most concise introduction to what .net is about that I have seen!

hth - John

John Murray
Friday, April 23, 2004

*  Recent Topics

*  Fog Creek Home