|
-
Dec 24th, 2002, 10:32 AM
#1
Thread Starter
Frenzied Member
C# or VB.net or VB or C++?????
I can't decide which language to study. MS said that VB.net and C# are just as good as each other and I read in 2 places that C# is better than C++; it can do everything C++ can do and more.
Can you help me decide? I want to devote my time to something worth while; something that is just as powerful as c++.
-
Dec 24th, 2002, 10:46 AM
#2
Sleep mode
Now VB.NET can almost do 99% of what C# or C++.NET do.
for me, VB.NET is my fancy language.
-
Dec 24th, 2002, 10:47 AM
#3
Fanatic Member
Keep in mind this is coming from a pretty inexperienced programmer, but I read a lot of docs 
If you want pure power, then C++ .NET is probably best since you have the OPTION of using the managed extensions. If you don't care to use the .NET framework you can write platform-dependent apps which may run somewhat faster than the managed code produced by VB and C#. On the other hand it's a very hard to learn if you're new to programming. I have written some Windows NT security utilities in C++ in the past and if you don't know the language, teaching it to yourself is sort of like trying to give yourself cancer.
C# .NET has a couple of advantages over VB .NET, none over C++ that I can name. It has all the alien structure and syntax of C/C++, but only produces managed code (requires the .NET framework to run) whereas C++ .NET can do either. The only advantage C# has over VB .NET that I can think of is that C# deals with pointers "better" than VB, but I don't understand the difference well enough to explain why. C# is also very hard to learn if you're new to programming.
VB .NET is, by contrast, pretty damn easy to learn in my opinion, and the library of examples of free code in VB .NET is growing constantly. Many people agree that VB is far easier to learn "how" to program with than a C variant. Later on you can pick up C/C++ with a lot less pain than learning it from scratch.
-
Dec 24th, 2002, 10:52 AM
#4
Sleep mode
C++ applications sometimes have vatal and vague errors that in some cases can't be traced.I mean dealing with pointers and memory allocations and that stuff that one can hardly understand
-
Dec 24th, 2002, 11:13 AM
#5
Thread Starter
Frenzied Member
If VB.net can do everything that VB can do and more then I think I'll stick with that.
What do I need to start programming? I have VB6 but I don't think that will work. What software do I need? Don't tell me, I already know. . . I need books and books and reading material to learn this language. I have a VB6 book I am reading now. Is VB.net close enouph to VB6 that I should read this?
-
Dec 24th, 2002, 11:18 AM
#6
If you have absolutely no prior experience, I would recommend C# -- this is just my 2 cents, but learning VB and then moving to VB.NET would be very frustrating, simply because they're just different enough to frustrate you. the VB syntax is much more verbose than that of C++ / C#, which is partly the reason i prefer it.
For example:
Code:
' VB / VB.NET:
Dim myVariable as Integer;
' C++ / C#
int myVariable;
Keep in mind I'm not saying C# and C++ are the same, only that their syntax is similar.
Every passing hour brings the Solar System forty-three thousand miles closer to Globular Cluster M13 in Hercules -- and still there are some misfits who insist that there is no such thing as progress.
-
Dec 24th, 2002, 11:24 AM
#7
Sleep mode
you need some basics , such as variables and what are they ?
Declarations types , Controls , event , Subs, Functions , and so
Programming is a matter of time and practice
-
Dec 24th, 2002, 11:37 AM
#8
PowerPoster
Go with C#....Once you have a good handle of the basic syntax, reading and converting .NET code from one language to the next is fairly simple. The real fun is learning the various .NET libs and what that have to offer.
Also, hands down, Mastering C# is the best book published to date on the C# language.
Last edited by Lethal; Dec 24th, 2002 at 11:42 AM.
-
Dec 24th, 2002, 12:04 PM
#9
Thread Starter
Frenzied Member
Letal, that is a funny avatar. I have been trying to study C++ from the C++ for dummies book and I am finding that either I am a dummy or the book is not written very well.
If C# is not as good as C++ ??? then I probably won't want to waste my time. I will wait for your opinion.
Also, speaking of C# what does this mean "but only produces managed code (requires the .NET framework to run) whereas C++ .NET can do either."?
Remember, I am new to programming. On one hand I want to study a powerful language and on the other, something that I can learn on my own.
-
Dec 24th, 2002, 12:16 PM
#10
That's the advantage of learning C# -- because the basic syntax is very similiar to that of C++, you will have a headstart on learning a more advanced language. In addition, most of the concepts, with a few notable exceptions (eg templates), that are used in C++ are available in C# / .NET - classes, inheritance, overloading, etc.
Every passing hour brings the Solar System forty-three thousand miles closer to Globular Cluster M13 in Hercules -- and still there are some misfits who insist that there is no such thing as progress.
-
Dec 24th, 2002, 12:24 PM
#11
PowerPoster
Don't worry, C# has plenty muscle to work with. When you write C# code, you are writting code that executes within the clr environment, aka 'Managed Code'. It is also possible to write 'unsafe code' in C#.
In unsafe code or in other words unmanaged code it is possible to declare and use pointers. If we want to write code that interfaces with the operating system, or want to access memory mapped device or want to implement a time critical algorithm then the use of pointer can give lots of advantages. However, in all the books I've read on unmanaged code, it's been said that it is rarely used in real-world applications.
Hope this helps...
-
Dec 24th, 2002, 12:46 PM
#12
Thread Starter
Frenzied Member
(requires the .NET framework to run) - what does that mean? Is this a totally online language? I hope not.
-
Dec 24th, 2002, 12:57 PM
#13
Thread Starter
Frenzied Member
One more question. . . I hope.
If I chose VB.net or C#.net what programs do I need to start building visual programs?
-
Dec 24th, 2002, 02:01 PM
#14
You can shell out a lot of cash for Visual Studio .NET, or you can download the Runtimes and choose a different IDE. There are quite a few available, but I don't know where to find them off the top of my head. Someone else should be able to point you in the right direction.
Every passing hour brings the Solar System forty-three thousand miles closer to Globular Cluster M13 in Hercules -- and still there are some misfits who insist that there is no such thing as progress.
-
Dec 24th, 2002, 03:46 PM
#15
Thread Starter
Frenzied Member
What is this about the .net framework is required to be installed for someone to run a .net application.
Are they saying that if I make a little program using C#.net that they will need .net framework to use my program?
-
Dec 24th, 2002, 04:07 PM
#16
Hyperactive Member
Originally posted by aewarnick
What is this about the .net framework is required to be installed for someone to run a .net application.
Are they saying that if I make a little program using C#.net that they will need .net framework to use my program?
http://www.microsoft.com/net/basics/
This site should answer some of your questions.
EDIT:
This one might be better:
http://msdn.microsoft.com/netframewo...ew/default.asp
-
Dec 24th, 2002, 04:46 PM
#17
Thread Starter
Frenzied Member
Maybe I have a brain cramp, I couln't find anything on the subject. I did find that there are compilers for almost any language.
-
Dec 24th, 2002, 05:21 PM
#18
PowerPoster
What is this about the .net framework is required to be installed for someone to run a .net application.
You guessed it!
Don't worry, it's not as bad as it sounds. Future MS OS's will have the framework built directly into the os, but for now, your clients must have the framework installed on their computers in order to run a .NET application. Imaging trying to use all the various windows api's without the dll's, your app would simply puke all over the keyboard. I would suggest either reading up on the web about .NET or getting you a good beginners book.
Good Luck,
I'm sure you'll have a blast with your new toy!
-
Dec 24th, 2002, 05:35 PM
#19
The .NET framework is a core set of objects that get used in all or most of the different .NET languages. Right now its about 21MB worth of stuff and yes every computer that will run your applications will need to have the framework installed.
I think that either VB.NET or C# would be good languages to learn. They aren't really much different other than syntax. If you would like to eventually learn C++ then I'd say start with C# but I think that C# or VB.NET is going to have more than enough power for whatever you decide to make. The only reason I say C# if you will move to C++ later is because of the similiar syntax, but also the syntax is part of what makes it hard for beginners to learn. Where VB.NET is more wordy but it is also closer to human language and thus can be easier for beginners to understand.
As a general rule I think you should learn as many languages as you can, at least to some degree. So more than likely you'll end up learning both VB.NET and C# especially since its easier to find examples if you know both.
Last edited by Edneeis; Dec 24th, 2002 at 05:46 PM.
-
Dec 24th, 2002, 05:41 PM
#20
As far as what you need to write programs: The framework has a command line compilier but then you'd have to use Notepad or something to write the code. Since you are learning this is not a good idea. The best bet for Tools or an IDE to program from is either a free one, which may be a little harder to learn with but is free, http://www.icsharpcode.net/OpenSource/SD/default.asp or the standard by MS, Visual Studio.NET (or part thereof) which would probably be the easiest to learn from but is costly http://www.amazon.com/exec/obidos/tg...tware&n=507846. Or instead of the whole Visual Studio which has four languages (C++,C#,VB,J#) you can get a slim version with just the language you want to learn: (VB) http://www.amazon.com/exec/obidos/tg...nce&s=software or (C#) http://www.amazon.com/exec/obidos/AS...611750-0868631
-
Dec 24th, 2002, 05:43 PM
#21
PowerPoster
Not to mention that you will inadvertanly learn the basic C# language syntax by just reading and looking over the mounds of documention that msdn provides (majority of code examples are in C#). I agree with Edneeis, just try to learn them both and you shouldn't have any problems..
-
Dec 24th, 2002, 07:51 PM
#22
PowerPoster
Listen to the two wise men above....
I just want to add, I can find a lot more examples in C# than I have been able to in VB.Net. Maybe I am just more tuned into finding C# code, so I do, but that is how I see it.
-
Dec 24th, 2002, 09:21 PM
#23
Thread Starter
Frenzied Member
I think I am getting a hold on C++ right now. It doesn't seem too hard.
Do you know any great books for beginner programmers wanting to learn C#? I know that Lethal mentioned mastering C#. But what about free online documentation.
I think I just discoverd another problem: Do I need WinXP for this?
Last edited by aewarnick; Dec 24th, 2002 at 09:24 PM.
-
Dec 24th, 2002, 09:44 PM
#24
Lively Member
i think
hi,
i think the language is not the main thinking if ur logic is good ,,
but prefer C# becoz it some how challanging!!
-
Dec 24th, 2002, 09:44 PM
#25
Thread Starter
Frenzied Member
hellswraith, I found the following mistake on your site:
an you can download all the full size images straight to your hard drive.
-
Dec 24th, 2002, 09:56 PM
#26
Thread Starter
Frenzied Member
Please don't forget my questions above and when I started the program that you suggested to me I get this error:
required .dll file, mscoree.dll, was not found. I have the feeling that I need winXP. What do you think? Can I get XP professional somewhere pretty cheap?
-
Dec 24th, 2002, 10:20 PM
#27
Addicted Member
Do you have the framework installed? I think that the file you mentioned is part of the .net framework. I also believe that the free IDE's are built in c# so they would require the framework inorder to run.
You can either download it or do a windows update but you shouldn't need windows xp.
Just a thought.
jeremy
-
Dec 24th, 2002, 10:22 PM
#28
PowerPoster
Originally posted by aewarnick
hellswraith, I found the following mistake on your site:
an you can download all the full size images straight to your hard drive.
Thanks, it has been fixed.
-
Dec 25th, 2002, 11:06 AM
#29
Sleep mode
interesting
Why C-Sharp?
When people talk of computer programming languages, there is always a debate on which one is better. C++, Java, Perl, PHP3… the arguments and counter-points can be endless. However, it is our considered belief that that C# would be in a sense better than the rest. And there is a reason for this.
Normally, whenever a new product is introduced, it betters the technologies of its ilk. For existing technologies evolve with their own pros and cons. Therefore, in 1995, when Sun introduced Java, it took the best from amongst all languages and added current technology. Now Microsoft has done the same. Its taken the best features from C++ and Java and morphed them into this new programming language called C#.
Imagine those who worked on Java when it was launched six years ago. Today a CV boasting of a six-year experience in Java means the maximum possible. Simple arithmetic - Java was launched only in '95. Similarly, if you get into C# today, only a Microsoft engineer could have more working knowledge of it! Therefore, we don't think we need to elaborate further on the weight that a CV with C# exposure would command! Think for yourself. You may know of people who have struck lucky in getting a job. But when it comes to keeping it, Lady Luck is powerless.
Indeed, technology is ruthless, in that, it breaks across all age and seniority barriers. That's the reason why even a teenager could have as much experience with a new technology as a 40-year-old. Unfair, but true.
by Vijay Mukhi
on the other hand , if you want to read about VB then click here
better you read , think and then decide.
-
Dec 25th, 2002, 05:14 PM
#30
New Member
It depends where you are at (in terms of knowledge and timeline). If you're a student with little to no programming knowledge/background, then I'd shoot for C#. If you're a long time VB programmer, then it would make sense to jump to VB .NET
-
Dec 25th, 2002, 06:24 PM
#31
PowerPoster
Originally posted by VBGOD
It depends where you are at (in terms of knowledge and timeline). If you're a student with little to no programming knowledge/background, then I'd shoot for C#. If you're a long time VB programmer, then it would make sense to jump to VB .NET
I don't agree with that. I have been using VB6 for 3+ years, and I was very comfortable with it. When .Net came, I choose to learn C# instead of sticking with VB.Net. I think I spent, at most, a week longer in learning, and that was syntax and such. All the rest of the learning was learning the framework, which it doesn't matter which language you are using, you have to learn it anyway. The cool thing was, I was able to EASILY switch back to vb.net since I already understood the framework, and most of the syntax.
I think that VB6 users should go ahead and start off with C#. This at least will get them comfortable with it. Then, once they know the framework, they can easily switch back and forth. That, to me, is what is going to make a successful .Net developer; the ability to easily switch between the two languages. You can utilize examples no matter which it was written in.
-
Dec 25th, 2002, 08:04 PM
#32
Sleep mode
-
Dec 26th, 2002, 12:34 AM
#33
Hyperactive Member
I prefer C++ over C#. C# is great for database applications and simple stuff - but even my C# IDE (written in C#) runs slow. So, use C# for the tasks you would use VB 6.0 or VB.NET and C++ for true tasks.
Just my 2 c
-
Dec 26th, 2002, 11:59 AM
#34
Thread Starter
Frenzied Member
I am starting to like C++. I am reading this book right now that does not explain everything. So, I am confused about this:
int sumSequence(void)
{
// loop forever
int accumulator = 0;
for(;;)
{
// fetch another number
int value = 0;
cout << "Enter next number: ";
cin >> value;
// if it's negative...
if (value < 0)
{
// ...then exit from the loop
break;
}
// ...otherwise add the number to the
// accumulator
accumulator= accumulator+ value;
}// break goes here
// return the accumulated value
return accumulator;
}
int main(int arg, char* pszArgs[])
{
cout << "This program sums multiple series\n"
<< "of numbers. Terminate each sequence\n"
<< "by entering a negative number.\n"
<< "Terminate the series by entering two\n"
<< "negative numbers in a row\n";
// accumulate sequences of numbers...
int accumulatedValue;
do
{
// sum a sequence of numbers entered from
// the keyboard
cout << "\nEnter next sequence\n";
accumulatedValue = sumSequence();
// now output the accumulated result
cout << "\nThe total is "
<< accumulatedValue
<< "\n";
// ...until the sum returned is 0
} while (accumulatedValue != 0);
cout << "Program terminating\n";
return 0;
}
I ran this little program and found that int main showed up first. But before main finished it jumps up to the beginning and then back down below main. Here:
cout << "\nThe total is "
<< accumulatedValue
<< "\n";
Why?
Last edited by aewarnick; Dec 26th, 2002 at 12:02 PM.
-
Dec 27th, 2002, 11:24 AM
#35
Thread Starter
Frenzied Member
Please help. I am a confused little boy!
-
Dec 27th, 2002, 11:27 AM
#36
Wrong forum to ask C++ questions.
-
Dec 27th, 2002, 11:53 AM
#37
Thread Starter
Frenzied Member
Oh, Your right. I'll cut and paste.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|