Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

DrGUI

Upgrading to what language?

This topic is 5176 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I am having much trouble deciding whether to move from Visual Basic .NET 2002 to VB 2003 or C# 2003. My reasons for moving are (although VB is catching up with <<, >>...), I want ++ --, operator overloading, and all of the System data type aliases. Or does VB 2003 already offer these? I could not really find a comprehensive features list. Here are my questions: Does VB .NET 2003 support all of the things I just said above? Will VB .NET 2002 and C# 2003 work together on a project in the same IDE (because they are from different years) (because I want to be able to move gradually or not upgrade it all)? I think VB .NET 2003 supports generics (or templates) but does C#? CType(expr, type) is to DirectCast(expr, type) as (type) is to what in C#? Are there any converters between them (since they are quite similar now)? Are operations with unsigned data types as fast as with unsigned ones? Does it really matter with big projects using multiple languages? I am only 14, perhaps it will not matter by the time I could enter the gaming industry (look at my resume).

Share this post


Link to post
Share on other sites
Advertisement
If you want to get into game design, you''ll need to learn some lower level languages first: namely C/C++ (which shouldn''t be hard at all if you already understand C#). You''re also going to need to have at least a passing understanding of ASM.

Personally, I''d stick with C# for general-purpose development though. It''s got syntax that most every programmer recognizes, and it''s a lot more likely to be supported in the long run for desktop development (especially as .net is implemented on other platforms).

Ultimately, for game development, bytecode is never going to be as fast as machine code, no matter how you do it. Even custom, stripped down scripting engines run their bytecode at about 5-20% of the speed of their in-game code. That''s not pretty.

Share this post


Link to post
Share on other sites
I think you forgot C++, and since you remember now, there is no decision to make (it''s crossplatform, fast, functional, and great for game development).

Share this post


Link to post
Share on other sites
If you are only 14, and you are serious about trying to get into game programming here is my advice:

- Don''t waste your time on visual basic. If you already have a decent grasp of visual basic, it means you have a decent grasp of programming and that is all visual basic can do for you.

- Learn C++, at 14, you got a LOTTA time on your hands, and that means a lot of time to learn, by age 18 you can be a C++ master and that will be immensely invaluable for you.



But.. to answer your question directly, switch to C#. Because then when you realize you should of just switched to C++, you will at least be familiar with a language that is at least loosely related to c++

Share this post


Link to post
Share on other sites
Yeah, I learnt VB 6 when I was 9, learnt C++ at 11 with book so I do actually know the syntax, but I don''t like the library or MFC. 13, I moved to VB .NET 2002 and converted my Graphics engine; manually I might add because I only had standard edition. I know C# langauge but at the present do not own the compiler, but have read through all of the differences and similarities. They are actually VERY similar now, just slightly different syntax and some keyword differences.

Someone else said that soon the move to C# would be like shift from ASM (which I do know, by the way as I was trying to speed up my fire effect in VB 6). I also don''t really want to have to convert all of my graphics engine again, C# and VB code can work together but aren''t there interoperability issues with C++. I can definately read C++ or I would have got nowhere with reading all the books on graphics, AI, audio and physics programming that I have got.

Share this post


Link to post
Share on other sites
Also, improvements in the JIT compiler may make the code faster in the future.

Share this post


Link to post
Share on other sites
If you just want to learn the language you'll probably be using for your professional career in programming, go with C++.

If you want to learn more about programming, learn Common Lisp and then C++. Common Lisp is quite a bit different from C++ and the languages you listed, and it will help expand your understanding of high-level stuff (which is often more important than the low-level details in my experience - the details only get more attention because the popular languages require it). Not only that, but there are many free Common Lisp compilers and the best IDE I've found for it(emacs) is also free.

If you only want to choose from the languages you listed, I suggest you don't upgrade at all and just keep using VB .Net 2002. I hear the 2003 IDE is better in some ways, but from those same statements I don't think it is worth the cost.

[edited by - Extrarius on May 19, 2004 10:23:18 AM]

Share this post


Link to post
Share on other sites
Even if your eventual goal is C#, I''d learn C++ first. If you get into professional game development chances are you''ll have to code/maintain/understand C++ code at some point.

Share this post


Link to post
Share on other sites
quote:
Learn C++, at 14, you got a LOTTA time on your hands, and that means a lot of time to learn, by age 18 you can be a C++ master and that will be immensely invaluable for you.

Oh please. C++ takes more than four years...especially if its your first language. Of course, people call wildly different things ''mastery.'' In my mind it''s someone who can explain Koenig lookup and workings of the partial template specialization, whereas with other people it is merely writing code that doesn''t produce a syntax error 85% of the time.

I''d jump into game development with C#. It is plenty fast enough for hobbyist projects, you can spend less time fiddling with all the hoops that C++ makes you jump through, and you can get a better feel for how larger-scale applications are constructed. Besides, it is just more fun, and that really counts for something. The C++ specifics can always be picked up later, they aren''t as hard as people would like you to believe.

Share this post


Link to post
Share on other sites
I woud recomend learning c becouse it is easy and you can read the code with no problem (it is wery clear).
The fact that you know VB gives you an advantige becouse ther are many similar things - so if you are a quick lerner you will learn c (maybe c++) in 3 months.

And don''t let the age stops you from trying to make games - I am 15 and i have learnd C/C++ DirectX(8/9) OpenGL and som of assembler coding iin last 5 months (becouse i had some decent background with Visual Basic (5/6) ans DX(8)).

The main diferenc betwen VB and C/C++ (i think) are the pointers (useful at almost every code). If you understand pointers all other c++/c diferences are pure SYNTAX.

P.S.
Sory about the speling errors

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!