• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

Do I need to learn a new language?

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.

Shelnutt2

Overclockers Team Content Editor
Joined
Jun 17, 2005
Location
/home/
I'm taking Physics I this year and next year I will take Physics II, and what I want to do is as we learn things and formals and just learn physics I want to come home and write a program for it. Just as an example say after we learn about dropping a ball from a certain hight and the formula for how long and how high and all it will bounce on mother earth. I want to up date my program to include that. So one could select all the variables and then see A) a visual (3d?) model of what happens and then also for it to spit out the data into a table.

Obviously this will be a long term project and be a learning project also. When I finish Physics next year, I want to have a program that I can pass on to others so they can have a program for experimentation. Plus this is a great way to get the service hours I need.

I've written two programs so far, First one was command line based the second was an actual GUI program that did the same as the command line. Both were very basic. I wrote them in java.

So my question goes, can I do what I want in Java? Can it be easily done in Java, I mean by that is I don't want to be trying to do it in Java and end up having to write 5-10 times the coding and everything than if I had written it in something else.

Linux compatibility isn't that big, but its one reason I used java before. Although I seriously doubt anyone will be using Linux that would use my program.
 
Shouldn't be a problem in Java. The hardest part would be the graphical model and I don't see how another language would make that easier.
 
If you really plan on getting other people to use it, I recomend following the strict applet rules and hosting it on a webpage. "Executable" Jars are a load of crap.
 
I would recommend Blitz 3D for that job. It is a complete compiler/ide with 3d support that is built around classic basic. It's fast and easy!

http://www.blitzbasic.com/
http://shareit1.element5.com/product.html?productid=147747

If you need more speed, more features and common opengl/dx commands, then Blitzmax is your thing. It's mac/win/linux crossplatform and supports gui commands for all operation systems. And the bestpart is that it's still simple to learn.

http://www.blitzmax.com/Products/blitzmax.php
 
Well DaWiper I can't really afford nor do I wish to spend $80-$100 on software for this project.


So you guys think it will be ok in Java. Even the 3d modeling stuff? I'm kind of afraid this program might out grow an applet. What do you think?

I also so this posted in another thread. Now I don't mind writing code at all, but maybe this is a free alternative to what DaWiper suggested?
http://gamemaker.nl/
 
If you search the web you will probably find some kind of free basic/compiler/ide package that suit your needs. Java imho is a last resort. Sure it's os independant, but it is slow as h...
 
Maybe Visual Basic? Microsoft has a free visual basic thingy. I was playing with it once. I know Java is slow, and I'm guessing that will be a big problem eventually.
 
Java is not slow cpu-wise... it is a complete memory hog and takes forever to load... hence the perception of slowness. So it doesn't become a problem, it either is or isn't a problem right now (depending on how much ram everyone has), no matter how simple/complex your app is.
 
Java is definatly hoggish about memory, but it is not slow. It's not so fast that it beats out C++, but it does a very respectable job. I wouldn't think twice about writing a CPU intensive app in it (as long as it also dosen't need a ton of memory-hogging objects).

As for graphics, the AWT API is fairly good for simple drawing, but you may need to do a bit of research and experimentation to wrap your head completely around it. If you want to go the 3D route, I've used JOGL with some success, and have heard good things about Xith3D and jMonkeyEngine. With any of the 3D APIs though, you'll probably want to pick up a book on OpenGL programming. I took a Java graphics class last term, and I'm not sure how much I would have been able to soak up from Google alone...

JigPu
 
JigPu said:
Java is definatly hoggish about memory, but it is not slow. It's not so fast that it beats out C++, but it does a very respectable job. I wouldn't think twice about writing a CPU intensive app in it (as long as it also dosen't need a ton of memory-hogging objects).

As for graphics, the AWT API is fairly good for simple drawing, but you may need to do a bit of research and experimentation to wrap your head completely around it. If you want to go the 3D route, I've used JOGL with some success, and have heard good things about Xith3D and jMonkeyEngine. With any of the 3D APIs though, you'll probably want to pick up a book on OpenGL programming. I took a Java graphics class last term, and I'm not sure how much I would have been able to soak up from Google alone...

JigPu

OK, well I'm set with Java then. I'll start with 2d things for now. I'm going to have to learn openGL and everything for 3D.

After googling I've seen that there are already many psyhics java applets out there. I'd like to make just one huge program though, thats got basicly everything in it.

Hmmm... I am trying to get the source code of this applet to complie but I get 56 errors..I'm not sure why though.
 
Heh, that's just one class of his source code.
A few whole classes missing:
CMass
CSpring
CArc
Dragable
CElement
DoubleField
 
Back