VB Programmer -- New to Java
Hi All!
I'm just starting to play around in Java. I've got a lot of experience with VB and VB.Net (and some other stuff but mainly VB/VB.Net) I'm hoping someone here might be able to provide me with any documentation or website that might outline the various differences between the two languages -- e.g. something I'm learning with the difference between a Function and a method. I've done some web searches but mostly everything is X is better than Y articles. ;)
Thanks!
Joseph
[510 byte] By [
USFJosepha] at [2007-11-27 8:40:50]

tall order. your best bet is to google this.
It would help if you could narrow your focus:1 core language2 web applications3. desktop guisetc...I'm going the opposite way. I work in a small locatioin where I couldn't find a job programming in Java, so I switched to .NET
>...so I switched to .NET
May you die a horrible death, TRAITOR!! This sends shivers down my spine .... what a horrifying thought.
Eleven out of 17 of my contracts last year were migration deals; I moved them from .NET to Java & *NIX. One company saved over $11,000 in procurement expenses alone last year. (Factor in maintenance, etc. and they ended up saving somewhere around $15,000 if memory serves me correctly.)
@OP: Here's what NOT to do:
1) Put EVERYTHING into the main method.
2) Think that you'll be okay if you divide everything into methods - all within one class, but still cram everything into that one class. (Read up on Object Oriented Principals!!!) I have $10 that says that even though you know VB.NET, you didn't leverage the OO aspect of the language.
3) throw every exception that you come to and never handle it. (I know that Anders Florgenbergen or whatever the phuck his name is - you know, the guy that's developing C#, would disagree with me, but contrary to his stupidity ... nevermind... just don't do it!)
4) Refer to methods as functions.
5) Think that a TYPE or STRUCT exists in Java
6) Refer to classes as "modules"
7) use the word END ... EVER! (i.e. END FUNCTION, END SUB, END IF, etc.) { } are your friend :-)
8) Forget to use ;
9) Forget to match your curly braces { }
I could come up with a thousand things not to do, but it just sickens me to think of VB. You're already at a HUGE disadvantage being a VB developer. My advice - throw out about 90% of what you know about programming, replace it with knowledge of Object Oriented programming and convert your old VB, MS, .NET, C#, VC++ etc manuals into:
a) toilet paper
b) starter paper for your campfire/woodstove, etc.
Welcome to Java. Glad to have you on the "enlightened" side. ;-)
> 4) Refer to methods as functions.Does it matter what you call it as long as you use it correctly?
... I realized after reading my last post that you may take that a little too seriously. While all of it was true - there was a serious sarcastic undertone to it.
I hope that you enjoy developing in Java and I'm sure that participating in these forums will be a great learning source for you :-)
> > 4) Refer to methods as functions.
>
> Does it matter what you call it as long as you use it
> right?
No. But know the terminology. I've had the [pleasure?] of working with people who refer to implementation as instantiation, method overloading as operator overloading, etc. Knowing the terminology really is essential (although in this particular case, I doubt it would matter).
> ... I realized after reading my last post that you> may take that a little too seriously. While all of> it was true - there was a serious sarcastic undertone> to it. poor Hippolyte
> > ... I realized after reading my last post that you
> > may take that a little too seriously. While all
> of
> > it was true - there was a serious sarcastic
> undertone
> > to it.
>
> poor Hippolyte
**** nit-pickers.
[restatement]
all of it was true with the exception of my desire to see Hippolyte (what is that by the way, like a caffeine free Hippo .... that was gay .... sorry) die a horrible death (or a death of any other sort for that matter).
[/restatement]
> > ... I realized after reading my last post that you
> > may take that a little too seriously. While all of
> > it was true - there was a serious sarcastic
> undertone to it.
>
> poor Hippolyte
What can I say? Must feed family! But since I'm swimming the other direction,
from Java to VB.NET, and most of what I've done is start from scratch,
it hasn't been a horror show. I'm mainly writing web apps, which are a
pain in any language, but I try to program in an O-O fashion.
And I'm looking forward to using NHibernate on the next web app I work on.
I'll admit to being a Java chauvinist, but most of the criticism leveled at
VB.NET is really about the actual level of programming shown by .NET
developers rather than what *can* be done in VB.NET. Put those
same programmers in front of NetBeans and will their coding improve?
Other criticism I've seen of VB.NET might apply to VB 6 or earlier but is
now out of date. VB.NET has the same O-O features as Java, has
generics and multithreading etc...
> ...Hippolyte (what is that by the way, like a> caffeine free Hippo .... that was gay .... sorry)...Me thinks Navy_Coder needs to lay off the caffeine.
> What can I say? Must feed family! But since I'm
> swimming the other direction,
> from Java to VB.NET, and most of what I've done is
> start from scratch,
> it hasn't been a horror show. I'm mainly writing web
> apps, which are a
> pain in any language, but I try to program in an O-O
> fashion.
> And I'm looking forward to using NHibernate on the
> next web app I work on.
So you're coding in VB.Net and not c#? That's too bad since java and c# are syntactically so similar. I think that VB.net is pretty much the same language as c#, both share the same CLI framework, just (!) a different syntax.
> > ...Hippolyte (what is that by the way, like a
> > caffeine free Hippo .... that was gay ....
> sorry)...
>
> Me thinks Navy_Coder needs to lay off the caffeine.
"Hippolyte" means "freer of horses" in Greek. "Hippopotamus" means "river horse".
It didn't occur to me that my login name would strike people as odd.
> So you're coding in VB.Net and not c#? That's too bad since java and c# are
> syntactically so similar. I think that VB.net is pretty much the same language as
> c#, both share the same CLI framework, just (!) a different syntax.
Some earlier work was done in VB.NET so I was asked to stick to that language.
But you're right. When you stick to the managed subset, all .NET languages are essentially the same.
I've been programming in java for over 7 years. Java is an object oriented language (as I'm sure you already heard) that you'll need to become familiar with that takes some practice to learn compared to structured programming. Also, a java based web site consists of several technologies in addition to the java language that you'll need to be familiar with. Many programmers will read articles on the internet and pick up fragments of information on these various technologies and throw a web site together thats impossible to maintain and enhance. I think it would be better if you read whole books and experiment with the technologies. Consider it an at-come college course. Here is my suggested reading list read in roughly this order ( I suggest buying them one at a time via the internet (its cheaper) before moving onto the next book).
"Thinking In Java" - Bruce Eckel
HTML & XHTML: The Definitive Guide
JavaServer Pages - Hans Bergsten
Programming Jakarta Struts
JavaScript: The Definitive Guide
SAMs Teach Yourself SQL
JDBC and Java
Also, visit the Web Tools Platform (WTP) Project (www.eclipse.org/webtools) . Its a free Eclipse Java development tool that has the bulk of the java development IDE market (above even JBuilder).However, I suggest creating a few small java programs using the dos command line before you let this IDE do a lot of the work for you. You also might want to install some type of database (Oracle Lite, MySql, etc) on your computer so you have a database to play with (you'll need a computer with at least 2Gbytes of memory).
Ok, here's my two cents worth on Java Vs .Net
(I'm a java programmer currently learning .Net)
According to the Gartner Group, the market (ie, jobs) is and will continue to be evenly divided between Java and .Net. Therefore we should know both languages. A professional programmer should know several languages and not just one. So we all should get use to it. Also, many companies have or will have both Java and .Net on their servers and will be looking for someone to support both and get both to communicate with each other. .Net has been rewritten from the older VB language to be object oriented and is similar to Java (via C#). It appears that .Net has created a set high level objects and a set of well integrated(?) tools for their development environment that make it easier to develop whereas java relies on the programmer building low level components that you have to be very familiar with to build those high level objects (very time consuming). In .Net, you can pick any of several languages to program in ( VB, J#, C#), but you're probably better off with C# throughout your company. The major disadvantage are that .Net is proprietary (costs a lot) whereas java is free.
> > > ... I realized after reading my last post that
> you
> > > may take that a little too seriously. While
> all of
> > > it was true - there was a serious
> sarcastic
> > undertone to it.
> >
> > poor Hippolyte
>
> What can I say? Must feed family! But since I'm
> swimming the other direction,
> from Java to VB.NET, and most of what I've done is
> start from scratch,
> it hasn't been a horror show. I'm mainly writing web
> apps, which are a
> pain in any language, but I try to program in an O-O
> fashion.
> And I'm looking forward to using NHibernate on the
> next web app I work on.
>
> I'll admit to being a Java chauvinist, but most of
> the criticism leveled at
> VB.NET is really about the actual level of
> programming shown by .NET
> developers rather than what *can* be done in VB.NET.
> Put those
> same programmers in front of NetBeans and will their
> coding improve?
>
> Other criticism I've seen of VB.NET might apply to VB
> 6 or earlier but is
> now out of date. VB.NET has the same O-O features as
> Java, has
> generics and multithreading etc...
Oh, I know. I programmed in VB for a long time (yes, I'm ashamed). VB.NET is indeed an object oriented language - the problem is that VB.NET is mostly being used by former VB6 developers who have no clue what Object Oriented means. It's quite unfortunate. (My vendetta against Microsoft goes back a long time. I had the [mis]fortune of dealing with some of their source code a while ago and it made my head spin. Talk about a bunch of incompetent monkeys.....)
Wow, alot of pent up frustration in these posts.
I too am new at Java, having been and plan to remain for quite some time a flawed VB6 programmer, who is also moving on to .Net, ASP, and AJAX, which I am sure you can all give me a litany of reasons why I am jeopardizing the free world, but anywho
I have learned many laguages over the years starting C, Fortran, and PASCAL before my affair with MS began, and I have forgotten them all as I passed into the 'Visual' escapades along with a whole suite of National Instrument test pakages.
Now I want to learn mobile JAVA as I want to build some game programs for the MIDP market of phones; read cheap, easy, and marketable. I have successfully in the past written apps with embedded Visual Basic....
OK, you can stop laughing...no, really, I wrote a database driven app that allowed a user to organize and draft their Fanatsy Football team. Spent about two months at night and sold about 100 copies of the thing on line....yup, with vb. Only worked on PocketPC platform which severely limited my market, and well my target audience presented a very limited market window of about 4 weeks. Only had one major downfall, which I can blame all on MS...they changed the structure .cdb database files between PPC 2002 and 2003, but that was easy to overcome.
Anyhow, all I'm saying is being wed to a development platform to such a degree to have such venom for another, albeit inferior is well silly.
Oh, and by the way, any VB6, VB5, VB4, or even VB3 programmer HAS to know that a method is not a function...they are not the same in VB anymore than a procedure or subroutine.
>You also might want to install
> some type of database (Oracle Lite, MySql, etc) on
> your computer so you have a database to play with
> (you'll need a computer with at least 2Gbytes of
> memory).
You again! Why do you keep telling people that you need at least 2GB of memory to have a database on your PC for learning?
You can run one with much less, I bet you can run one with 256mb at a push. I have 2 on my PC and I have 1 GB of RAM. I also have heaps of other memory eating stuff and it runs fine.
> Hi All!
>
> I'm just starting to play around in Java. I've got a
> lot of experience with VB and VB.Net (and some other
> stuff but mainly VB/VB.Net) I'm hoping someone here
> might be able to provide me with any documentation or
> website that might outline the various differences
> between the two languages -- e.g. something I'm
> learning with the difference between a Function and a
> method. I've done some web searches but mostly
> everything is X is better than Y articles. ;)
>
> Thanks!
>
> Joseph
If you are the learn by doing type, I would recommend you take something you programmed in VB and understand quite well, then attempt to recreate it in Java. You will most certainly be qualified to answer your own question about differences after the experience.
Message was edited by:
kevljo