|
Frequently Asked
Questions about the group, .NET, ...
Sriram Krishnan,
Microsoft Student Ambassador
I don't know anything about
.NET...how do I contribute?
Well, just post a message on the group along the lines of 'What is .NET' or
'Can someone help me with this doubt',etc,etc...but please be active on the
groups.Post messages as well as responding to messages.It doesn't matter
whether you're right or wrong..no one will ridicule you...but we will all
learn something in the process.
In fact, that's the important message of this mail..please be active on the
group. Send messages as well as participate in discussions. Messages can be
about anything at all...but make sure you send them...:-)
Why am I not getting all messages?
MSN Groups is not really the best piece of software Microsoft has written
and often has problems delivering mails. Please check on the group site
http://groups.msn.com/maduraidotnet/ from time to time for messages that
you may have missed.
What is .NET?
Well, I really don't want to bore you with a proper technical answer..so
here's my own , very unofficial answer....NET is a framework which lets you
write some amazingly cool software and web applications very easily. What is
a framework? Well..it basically means that Microsoft has done a lot of work
for you...you have to write much less code because somebody has already done
your work for you.And oh yeah....you can use any programming language you
want :-)
Ok...here's the official definition that I got from MSDN.
The .NET Framework is a new computing platform that simplifies application
development in the highly distributed environment of the Internet. The .NET
Framework is designed to fulfill the following objectives:
To provide a consistent object-oriented programming environment whether
object code is stored and executed locally, executed locally but
Internet-distributed, or executed remotely.
To provide a code-execution environment that minimizes software deployment
and versioning conflicts.
To provide a code-execution environment that guarantees safe execution of
code, including code created by an unknown or semi-trusted third party.
To provide a code-execution environment that eliminates the performance
problems of scripted or interpreted environments.
To make the developer experience consistent across widely varying types of
applications, such as Windows-based applications and Web-based applications
To build all communication on industry standards to ensure that code based
on the .NET Framework can integrate with any other code.
Don't understand what .NET is? Don't worry...nobody does after reading
Microsoft's definition :-). That's what the group is for...post a message
asking 'What is .NET?' and a lot of people more qualified than me will
respond.
Ok...now with that of the way, let me talk you through getting .NET
installed on your computer.
Setting up .NET on your computer
First of all, Microsoft says that .NET will run on all versions of Windows.
However, experience has shown that Win 95/98/ME have problems with
.NET...you either can't develop them or then have problems. So, I would
recommend having Windows 2000/XP/2003. If you have Windows 2003 Server, .NET
is already installed for you.
Cool, now you've the right software. You might have noticed that I haven't
mentioned anything about the hardware..that's because I've found that .NET
programs run almost on par with normal Windows applications. If you have an
ancient computer, don't expect lightning fast performance...but you can
still run (and develop) .NET programs.
Ok...first thing you need installed is something called the '.NET
Framework'. The setup is a 20-25 mb file named dotnetfx.exe..if you have a
fast connection (or if your Dad is willing to pay your dial-up phone
charges), you can download it from Microsoft's site or some other popular
downloads site like www.downloads.com.
I would recommend that you get it off some magazine CD...Digit and PCQuest
carry it pretty frequently. Or even better, just turn up at our monthly
meetings and you'll get a CD containing a bunch of .NET goodies for free.
If you have access to Visual Studio.NET 2002 or 2003, the .NET framework
comes along with it..so you don't have to install it separately.
The install will take some time..around 3-4 minutes on my P3 850 Mhz.But
after that, you are set to go because you have everything you need.
Your first .NET Program
Well, before I get into a bit of techie details about the .NET framework,
lets get our hands dirty with some code.
Step 1> Open up Notepad
Step 2> Type in the following text
using System;
class Hello
{
public static void Main()
{
Console.Write("Hello World");
}
}
Step 3> Save this file as 'first.cs'. I've saved it in C:\..but you can save
it anywhere...remember to change the path later on.
Step 4>Open up a DOS/Command prompt. Go to where .NET is installed for
you...it'll be underneath your Windows directory. In my case it is,
"C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705>"
Step 5> Type in 'csc first.cs'. Your code will be compiled into an exe.
Step 6> To run the program, just type in 'first'.
Cool..saw how easy that was. Now, let me talk a bit about what exactly you
are doing with this example.
You can think of the .NET framework that you just installed as something
similar to the Java Runtime, in the sense that it is required to run any of
the .NET programs. However, .NET is very different from Java as some of the
earlier messages in this group will show you.
The code you just typed in is in C#. 'csc' is the name of the CSharp
compiler. However, one of the USPs of the .NET framework is that you can
code in a variety of languages. I could have done the same example in VB.NET,
JScript.NET or in one of over 40 languages. This means that you can use any
language you are comfortable with...All languages in .NET are equal. This
means that no language is faster than another, etc,etc...there are only very
minor differences between the languages.
Do I need Visual Studio.NET?
Visual Studio.NET is Microsoft's IDE for developing .NET programs. However,
you DO NOT NEED Visual Studio.NET for anything...notepad is good enough :-)
However, if you do have access to Visual Studio.NET, it'll make your life
easier at times. However, I repeat, every feature of .NET can be accessed
without Visual Studio.NET...This means that you can even write VB.NET code
in Notepad, unlike VB 6.
Do I need to learn this 'C#' thing?
No, you don't . You can use whatever language you are familiar with..VB,
Java, etc,etc...
Can you suggest some good books?
Well, if you are looking for something specific, I would suggest posting a
message on the group.If you are looking for a book to start off with, I
would suggest 'Introducing Microsoft.NET' by David.S.Platt. Anyway, here's
what Kaushik Srenevasan says about good .NET books.
C# programming in 2.5 days, Stephen R.Davis
This book won’t teach you anything about the .NET framework. However, it’s
good for a newbie, because, it just shows you how to write programs in C#,
without worrying too much about anything else. It clearly explains C#
language constructs with good examples.
Microsoft C# language specifications
I owe my C# skills to this book. Beware, a beginner might find it too
restrictive at some places... This book is just what it says - a "Language
specification". This is ideal for people who are already proficient enough
in at least one of the C family of languages. (C/C++/Java)
Microsoft Visual C++.NET step by step, Templeman, Olsen
[Even though C++ is my favorite language, IMHO I wouldn't recommend Managed
C++ to be a good starting language to learn the .NET framework. If you are a
beginner with .NET, learn C# or "Pure" VB.NET i.e. without even getting to
know about Microsoft.VisualBasic namespace. :-) ]
This book adopts a tutorial approach, in teaching basics of C++ / Managed
extensions C++
Programming Microsoft Windows with C# - Charles Petzold
If you've read Programming Windows with the Win32 API by Charles Petzold,
you'll love this book! However, one thing I found dissatisfying with this
book is that, Petzold talks too much about presentation oriented stuff in
Windows Forms. He completely leaves out on data access in .NET (ADO.NET) and
corresponding controls.
Programming ASP.NET - Dino Esposito
An excellent book on ASP.NET! (Even for people who haven't done a lot of web
development with ASP or similar technologies). You just need to have a good
understanding of the .NET framework and C#, to enjoy this book.
Developing Windows based applications using Visual Basic.NET and Visual
C#.NET
Developing XML Web Services and Server components using Visual Basic.NET and
Visual C#.NET
These two books are the official MCAD/MCSD study guides released by
Microsoft press. Good stuff for beginners (especially the first one) But not
very extensive...
and my favorite...
Inside Microsoft .NET IL Assembler by Serge Lidin
This book drills down into the internal structures and operations of the
.NET common language runtime and talks extensively about the IL assembly
language.
And one more book that should probably be in the bookshelf of any
Intermediate/Advanced level (and probably even a beginner?) .NET programmer
is Jeffrey Richter's "Applied Microsoft .NET framework programming". There
is even a version of the same book that has code samples in VB.NET -
authored by Jeff and Fransesco Balena....
What about good web sites?
Well, there are a huge amount of .NET sites. Here are the official ones..and
probably the best ones.
www.msdn.com
www.asp.net
www.gotdotnet.com
got more questions? post it in the
forum ...
|