Sign in to follow this  
Followers 0
BringBackFuturama

Secondary Language:VB or Java?

28 posts in this topic

After I'm done learning C++, I am going to take classes in another language. My school has Visual Basic and Java...and maybe others I haven't looked into. I realize that Visual Basic is a very GUI-oriented langauge, but what about Java? I don't know much about it besides that it's very common for web development. Which one would be more useful as a langauge? And what about stuff like C#, javascript, Actionscript and such. These all seem interesting. I'm just a bit confused on where to go next.
0

Share this post


Link to post
Share on other sites
I would sugggest C#. You get some of the rapid development that you get with VB but it has more depth, also it would feel a lot more like what you are used to.

theTroll
0

Share this post


Link to post
Share on other sites
Quote:
Original post by TheTroll
I would sugggest C#. You get some of the rapid development that you get with VB but it has more depth, also it would feel a lot more like what you are used to.

theTroll


I second C# too. Java is kind of wierd when it gets into GUI/SWING/AWT/whatever. I never understood that part of Java, especially the 6+ different type of layouts. Visual Basic is good, but I would reccommend C# to the top.
0

Share this post


Link to post
Share on other sites
If you are comfortable with C++, Java and C# should not be difficult to pick up due to the similarities in syntax.

Visual Basic is something different (some will say it's bad, but it's just different, and different is not a bad thing), the syntax is more english-like. Sure it has drag-and-drop features for forms and such, but you still have to write code to handle control events and the like.

Perl has a similar syntax to the C-type languages, but is also different in a number of ways. It's tricky, but if you understand it well enough it can be very powerful.

javascript is intended for use on the web, and is similar to C++ also, so it is not difficult to learn.

The bottom line is, in my opinion, no one language is "the best". They are all different, though some may share similarities. The language to use depends on the situation. If you want to do a Windows application, look at VB or C#. If you're looking for web-based, or platform-independant, languages, there's Perl and Java. If you want raw power for applications such as games, use C++.

Draw one from a hat and learn it. Do a project with it. Then learn another. Once you understand a few programming languages, learning more languages becomes easier, as the concepts are all the same. Only the syntax (and object names) is different.
0

Share this post


Link to post
Share on other sites
I think, when people are referring to VB they now refer to VB.NET, unless you are one of those poor souls forced to maintain a legacy Visual Basic 6 (or earlier) application. If you happen to prefer Visual Basic's syntax, you can learn VB.NET instead of C#, they are almost completely functionally equivilant. But if you haven't invested time learning an earlier VB (or if you did, and hate it) you might as well learn C#.
0

Share this post


Link to post
Share on other sites
I recommend Java. There are lots of advantages over C# and VB:

- It works on operating systems other than Windows (100%);
- It's present on lots of spaces, mainly, but not limited to, Enterprise computing, mobile devices and desktop;
- It's part of Java's culture the community to participate a lot, so we have more open source frameworks and libraries than .Net;
- It keeps compatibility between versions, unlike Microsoft;
- Great development environments such as Eclipse, that in my opinion beats Visual Studio when configured with the appropriate plug-ins. Or Netbeans, IntelliJ. In this area Java is very rich;

Go Java.
0

Share this post


Link to post
Share on other sites
Quote:
Original post by BringBackFuturama
After I'm done learning C++...


*chuckle*

Anyways, C# is a good choice after you stop learning C++.

0

Share this post


Link to post
Share on other sites
Quote:
Original post by Anonymous Poster
I recommend Java. There are lots of advantages over C# and VB:

- It works on operating systems other than Windows (100%);

True.
Quote:
- It's present on lots of spaces, mainly, but not limited to, Enterprise computing, mobile devices and desktop;

True.
Quote:
- It's part of Java's culture the community to participate a lot, so we have more open source frameworks and libraries than .Net;

That's not a plus or minus... that's a "feature".
Quote:
- It keeps compatibility between versions, unlike Microsoft;

That's the greatest flaw of Java in my opinion. I'd wish they'd structure the libraries to be more intuitive and not have them so unwieldly.
Quote:
- Great development environments such as Eclipse, that in my opinion beats Visual Studio when configured with the appropriate plug-ins. Or Netbeans, IntelliJ. In this area Java is very rich;

Really, VS works just fine. Very intuitive, helpful and makes coding time faster. It's nice that you can use 4 or 5 different IDEs for Java, but I'd rather one that works well. I've used Dev-C++ and Visual C++ Express. I can say that I rarely ever use Dev-C++ anymore.

Quote:
Go Java.

...Yeah programming languages and intuitive libraries and IDEs [smile]

0

Share this post


Link to post
Share on other sites
Quote:
Original post by Anonymous Poster
I recommend Java. There are lots of advantages over C# and VB:

- It works on operating systems other than Windows (100%);


HaHaHa,

Oh wait, were you serious??

Just try porting a java program to another OS. You'll find your self cursing incompatable jvm's, oh and OS X's jvm for 1.4 broke drag and drop so you patched that and then they fixed it in 1.5 so your patch broke that and then linux is 2 versions behind so you have to rewrite all that gui code you wrote on windows.

Yep java is 100% compatable.... oh wait, maybe its not:(

Just some of the real world problems we've run into using java.

Cheers
Chris
0

Share this post


Link to post
Share on other sites
I recommend Ruby because I'm a fanboy and it's great for getting stuff done, provided Frames-per-Second is not your metric of success for apps & tools. It can be bound to C++ for scripting, too.
0

Share this post


Link to post
Share on other sites
Quote:
Original post by Alpha_ProgDes
Quote:
- Great development environments such as Eclipse, that in my opinion beats Visual Studio when configured with the appropriate plug-ins. Or Netbeans, IntelliJ. In this area Java is very rich;

Really, VS works just fine. Very intuitive, helpful and makes coding time faster. It's nice that you can use 4 or 5 different IDEs for Java, but I'd rather one that works well. I've used Dev-C++ and Visual C++ Express. I can say that I rarely ever use Dev-C++ anymore.

Visual Studio and Dev-C++ don't even come close to the functionality and general all-round goodness that Java IDEs like Eclipse have. Anyone who says otherwise clearly hasn't actually used them.

This is (mainly) a language thing - C++'s convulted syntax and pleathora of special cases makes it very hard to produce intelligent parsers for it - Java has a much more consistent syntax (or, depending on your view, 'simpler', and is probably why people get put off of Java). This means that IDEs can actually do much more intelligent things with your code.

You only have to use the context-aware search or the refactoring tools to see just how far ahead they are of anything in the C++ world.
0

Share this post


Link to post
Share on other sites
Quote:
Original post by Anonymous Poster
- It's part of Java's culture the community to participate a lot, so we have more open source frameworks and libraries than .Net;
That's complete bullshit.
Quote:
- It keeps compatibility between versions, unlike Microsoft;
Causes more problems than it solves. Each newer .NET version is mostly compatible, although the library may have breaking changes, anyway.
Quote:
- Great development environments such as Eclipse, that in my opinion beats Visual Studio when configured with the appropriate plug-ins. Or Netbeans, IntelliJ.
Now that VS 2005 provides (incredibly long overdue) refactor support and a few other things, I'd be real hesitant to say that Eclipse is more powerful.
Quote:
Visual Studio and Dev-C++ don't even come close to the functionality and general all-round goodness that Java IDEs like Eclipse have. Anyone who says otherwise clearly hasn't actually used them.
Apples and oranges. VS' C++ intellisense is indeed inferior to Eclipse's Java intellisense. But VS' C# intellisense is vastly more capable than Eclipse's Java intellisense.
0

Share this post


Link to post
Share on other sites
Quote:
Original post by Promit
Quote:
Visual Studio and Dev-C++ don't even come close to the functionality and general all-round goodness that Java IDEs like Eclipse have. Anyone who says otherwise clearly hasn't actually used them.
Apples and oranges. VS' C++ intellisense is indeed inferior to Eclipse's Java intellisense. But VS' C# intellisense is vastly more capable than Eclipse's Java intellisense.

Just to be clear, I'm talking about using Visual Studio for C++. I havn't used it for C# but I gather they've actually made big strides in this area, which is about time. [grin]

I accept that lots of people just aren't going to like Java, and that it's got it's (numerous) flaws. But it really irks me when people think that Visual Studio (again, in it's C++ incantation) is the be-all and end-all of IDEs. It's not, it's vastly outdated and very, very clunky. But people are happy in their little rut, so Visual Studio (again, C++ version) will continue to be used absolutely everywhere.
0

Share this post


Link to post
Share on other sites
Quote:
Original post by chollida1

HaHaHa,

Oh wait, were you serious??

Just try porting a java program to another OS. You'll find your self cursing incompatable jvm's, oh and OS X's jvm for 1.4 broke drag and drop so you patched that and then they fixed it in 1.5 so your patch broke that and then linux is 2 versions behind so you have to rewrite all that gui code you wrote on windows.

Yep java is 100% compatable.... oh wait, maybe its not:(

Just some of the real world problems we've run into using java.


Yes, I am serious. I have been working with Java for some years now. My development machine is a Windows XP, the machines the application runs are AIX, Solaris and Linux.

Shut up, please. I am f***** tired of hearing this crap when in fact I have a few projects in this very laptop I'm using to type this message that go completely AGAINST what you are saying. Not to mention my real life experience as a developer for the last years.

BTW, I don't need to "port" a Java application to other platforms, it just runs! :)

0

Share this post


Link to post
Share on other sites
Well then perhaps your a better developer than I am. As I said in my post, all the items I posted were real world problems I encountered with java, where write once run anywhere was no where near working.


But don't take my word for it, just goolge "java porting"

Cheers
Chris
0

Share this post


Link to post
Share on other sites
Quote:
Original post by Promit
That's complete bullshit.


Really?

http://jakarta.apache.org/

I believe only the Jakarta has more open source software for Java than .Net has.

Quote:
Causes more problems than it solves. Each newer .NET version is mostly compatible, although the library may have breaking changes, anyway.


How old are you? Have you ever developed anything professionaly? It takes time and money (M-O-N-E-Y) for migrating things from one version to another, and most companies don't have the "latest and the greatest" simply because they don't need to spend money if something is working.

And making the transition process easier and as painless as possible is a BIG PLUS for Java. That's why it's entrenched in the Enterprise. Open source folks are just crazy and Microsoft changes everything every two years for you to buy the next Visual Studio.

For you to have an idea, Java 6 will be released this year (it's in beta now) and my company still uses Java 1.3 for some projects and 1.4 for others. And before this job I made interviews in other companies that were migrating from Microsoft stuff to Java for:

- market demand: people wanted to run the applications on other OSes
- backwards compatibility: less painful (means cheaper) transitions

Quote:
Now that VS 2005 provides (incredibly long overdue) refactor support and a few other things, I'd be real hesitant to say that Eclipse is more powerful.


I am not hesitant at all. I didn't try this 2005 version, but the other ones were just like "going back in time" taking in consideration what I was used to in Java.

Quote:
Apples and oranges. VS' C++ intellisense is indeed inferior to Eclipse's Java intellisense. But VS' C# intellisense is vastly more capable than Eclipse's Java intellisense.


News for you: an IDE it's not only "intellisense". It's about all kinds of wizards and appropriate tools for many kinds of applications (desktop, web, etc), integration with other tools (version control, modeling...), refactoring you already know, "code review" features for inspecting your code and telling you probable bugs and issues, debugging (obvious), profiling, integration with web servers, DB servers and others, and many other goodies.

Eclipse comes naked, but with the appropriate plugins it's killer.

I am always learning and I don't have all the answers, but a trick or two I know.
0

Share this post


Link to post
Share on other sites
Quote:
Original post by chollida1
Quote:
Original post by Anonymous Poster
I recommend Java. There are lots of advantages over C# and VB:

- It works on operating systems other than Windows (100%);


HaHaHa,

Oh wait, were you serious??

Just try porting a java program to another OS. You'll find your self cursing incompatable jvm's, oh and OS X's jvm for 1.4 broke drag and drop so you patched that and then they fixed it in 1.5 so your patch broke that and then linux is 2 versions behind so you have to rewrite all that gui code you wrote on windows.

Yep java is 100% compatable.... oh wait, maybe its not:(

Just some of the real world problems we've run into using java.

Cheers
Chris


i'm not going to enter into this, cause if youre "done" with c++, java and c# are simple to pick up, but this is silly. i regularly develop on my dual boot linux/windows machine with my eclipse workspace shared on an external drive with *no* problems. i also pass things off to a coworker that develops soley on a mac with *no* problem. not only that, i do it with a jni linked library (lwjgl) which has a different lib for each platform. and it still works. shocking.

obviously swing is sometimes more problematic, but if drag and drop and legacy code is your worst problems, i'll give you maybe .5%.
0

Share this post


Link to post
Share on other sites
Quote:
Original post by Anonymous Poster
Quote:
Original post by Promit
That's complete bullshit.


Really?

http://jakarta.apache.org/

I believe only the Jakarta has more open source software for Java than .Net has.


No. There MIGHT, just MIGHT be more Open Source software for Java, but that might be because Java is older. That's like saying there's more Open Source software in C than there is in Java. Duh.

Quote:

How old are you? Have you ever developed anything professionaly? It takes time and money (M-O-N-E-Y) for migrating things from one version to another, and most companies don't have the "latest and the greatest" simply because they don't need to spend money if something is working.


Funny, I run .NET 1.0 and .NET 2.0 applications concurrently just fine...

Quote:

And making the transition process easier and as painless as possible is a BIG PLUS for Java. That's why it's entrenched in the Enterprise.


They're pretty much toe-to-toe right now. And .NET is still growing, meanwhile, Java is shrinking...

Quote:
Open source folks are just crazy and Microsoft changes everything every two years for you to buy the next Visual Studio.


Why do they HAVE to upgrade again ? That's like saying: "I hate Java because they introduced generics and I don't use them in my old code." Well duh, use them in your new code ?

Quote:

For you to have an idea, Java 6 will be released this year (it's in beta now) and my company still uses Java 1.3 for some projects and 1.4 for others. And before this job I made interviews in other companies that were migrating from Microsoft stuff to Java for:

- market demand: people wanted to run the applications on other OSes
- backwards compatibility: less painful (means cheaper) transitions


Like the numbers of Java->.NET vs .NET->Java are even of the same order of magnitude. Are you trolling ?

Quote:

I am not hesitant at all. I didn't try this 2005 version, but the other ones were just like "going back in time" taking in consideration what I was used to in Java.


Your opinion. I've used both, and I disagree.

Quote:

News for you: an IDE it's not only "intellisense". It's about all kinds of wizards and appropriate tools for many kinds of applications (desktop, web, etc), integration with other tools (version control, modeling...), refactoring you already know, "code review" features for inspecting your code and telling you probable bugs and issues, debugging (obvious), profiling, integration with web servers, DB servers and others, and many other goodies.

Eclipse comes naked, but with the appropriate plugins it's killer.

I am always learning and I don't have all the answers, but a trick or two I know.


Select "Eclipse". Right-click. Refactor->rename identifier. "Visual Studio .NET". That's a wonderfully unbacked opinion. I can tell you VS is miles ahead of Eclipse. I must be right since I said it on the Internet.
0

Share this post


Link to post
Share on other sites
so to answer the original question: not VB. i think most everyone whos shown up can agree on that, especially after youve learned some c++. everything else is just fanboy jingoism.
0

Share this post


Link to post
Share on other sites
I think you should choose Visaul Basic, No matter VB6 or VB.NET you can choose between that two. The reason that you know C++ which have similar syntax to Java, C#. So you should learn BASIC syntax.
0

Share this post


Link to post
Share on other sites
Quote:
Original post by invisal
I think you should choose Visaul Basic, No matter VB6 or VB.NET you can choose between that two. The reason that you know C++ which have similar syntax to Java, C#. So you should learn BASIC syntax.


No... God.. No.

VB.NET is a good language, but is pretty much a skinned C#. Look at the code for both and take your pick.
0

Share this post


Link to post
Share on other sites
I would say that you're next language should be java or c#: wich one of the two? well, I used for a few projects Java, but only tried C#: I must say that I like more C# as a language and as a library (shorter and simpler both to understand and to remember). In addition C# has some nice features that can be useful here and there.
What I don't like about Java is its convoluted Swing paradigm that requires me to start every time from scratch studing GUI programming, but since platform independent GUI programming is one of the major C/C++ flaws, then I think that it could worth learning java. As already mentioned, java is also used on different devices (not only pc), and this can be a plus.
In short, pick a language of these (why not both? they are similar enough), try it and then decide.
0

Share this post


Link to post
Share on other sites
Quote:
Original post by justo
Quote:
Original post by chollida1
Quote:
Original post by Anonymous Poster
I recommend Java. There are lots of advantages over C# and VB:

- It works on operating systems other than Windows (100%);


HaHaHa,

Oh wait, were you serious??

Just try porting a java program to another OS. You'll find your self cursing incompatable jvm's, oh and OS X's jvm for 1.4 broke drag and drop so you patched that and then they fixed it in 1.5 so your patch broke that and then linux is 2 versions behind so you have to rewrite all that gui code you wrote on windows.

Yep java is 100% compatable.... oh wait, maybe its not:(

Just some of the real world problems we've run into using java.

Cheers
Chris


i'm not going to enter into this, cause if youre "done" with c++, java and c# are simple to pick up, but this is silly. i regularly develop on my dual boot linux/windows machine with my eclipse workspace shared on an external drive with *no* problems. i also pass things off to a coworker that develops soley on a mac with *no* problem. not only that, i do it with a jni linked library (lwjgl) which has a different lib for each platform. and it still works. shocking.

obviously swing is sometimes more problematic, but if drag and drop and legacy code is your worst problems, i'll give you maybe .5%.


Look I understand it can be hard when someone points out the faults of the language you like, I'm very protective of lisp but this is a quote from James Gosling:

"James Gosling recently said: "The perfect goal of "write once, run anywhere, anything runs on anything" is just goofy. You're never going to run some piece of weather modeling software on a toaster (laughs). And you wouldn't want to. So there are some scale and capability limits. But within that, you can do an awful lot to make sure that if somebody wants to read a file, it looks the same everywhere reading a file makes sense.""

cited from http://www.everything2.com/index.pl?node_id=43736

My whole point is that write once run anywhere doesn't always work, and I've got people telling me that it absolutely does.

So I'm going to call scoreboard on this one, unless someone thinks they know more about Java than its inventor.

Cheers
Chris
0

Share this post


Link to post
Share on other sites
Quote:
Original post by jfclavette
No. There MIGHT, just MIGHT be more Open Source software for Java, but that might be because Java is older. That's like saying there's more Open Source software in C than there is in Java. Duh.


No, the culture of MS developers and Java developers is different. Take a look at the quantity and diversity of web frameworks alone in Java!

Diversity is important for evolution and Java has lots of vendors and open source developers that create new software everyday.

In the other hand, in .Net it's you and Microsoft.

Quote:

Funny, I run .NET 1.0 and .NET 2.0 applications concurrently just fine...


Funny, that's not what I said.

Quote:

They're pretty much toe-to-toe right now. And .NET is still growing, meanwhile, Java is shrinking...


In what planet? The only people I know that migrated to .Net did it because they were all "Microsoft" before that, migrating from VB6.

Quote:
Why do they HAVE to upgrade again ? That's like saying: "I hate Java because they introduced generics and I don't use them in my old code." Well duh, use them in your new code ?


Huh? What?

They will need to do it sooner or later, for a variety of reasons that may range from drop of support in older versions, new funcionalities, new tools and libraries that require new versions, new systems that need to be integrated...

So basically what your saying is that a major rewrite of the application is ok? Probably it is because the developers hours are not being paid with YOUR money.
0

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0