Sign in to follow this  
NinjaClot

Going to Learn Java - What should I expect?

Recommended Posts

NinjaClot    158
OK,

A little Background about myself - I am a 3D Artist with a very strong passion for games and CG.
I am looking at learning Java later today as I am stuck on a project without a programmer that will not stay in one place.

What should I expect when learning Java?

Share this post


Link to post
Share on other sites
jbadams    25674
Expect to have to invest a bit of time, to face some difficulties, and to have to put in some time learning before you'll be able to work on your own project. I would suggest investing at least a week or two -- quite probably more, depending how you find the experience -- of your time on the basics before you even [i]think[/i] about having a go at your real project.

Make sure you don't just read about programming -- you need to actually write code. Do plenty of practice exercises, and expand upon them yourself as you go -- try making small changes, thinking about what you think the result will be, and then seeing what the result [i]actually[/i] is; any time you were wrong about the result, spend some time finding out [i]why[/i] you were wrong.


If you're a beginner, you should also expect to make a [i]lot[/i] of mistakes. Don't be afraid of making them, or embarrassed when you do; making mistakes, finding out what doesn't work, and what you could try to avoid them next time is one of the absolute best ways of learning, and there are a lot of concepts in programming that can be difficult to truly understand until you have experienced them first hand. Making mistakes as a beginner is [i]wonderful[/i] thing, as long as you take the time to learn from them.

Java is a relatively mainstream language, so you shouldn't really encounter much that you wouldn't when learning or working with any other language.


Hope that's helpful! [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]

Share this post


Link to post
Share on other sites
Ashaman73    13715
[quote name='NinjaClot' timestamp='1334515972' post='4931508']
I am a 3D Artist with a very strong passion for games and CG.
[/quote]
Java is ok, but when you have never coded before, as jbadams said, I would expect that the first project will be really hard.


When you want to learn a coding language first, which would be even useful for a 3d artist, I would sugguest to take a look at shaders. It is a special programming language (not OO, more C like) with a limited scope (no libs etc.). It is just for the basic constructs (if-statements, loops etc.), atleast you're familiar with the basic construct of a programming language when you dig into java [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]

Share this post


Link to post
Share on other sites
sheep19    494
[quote name='NinjaClot' timestamp='1334515972' post='4931508']
as I am stuck on a project without a programmer
[/quote]

May I ask what the project is? :)

Also if you insist on learning programming yourself, make yourself a favour and don't start with C/C++/Java.

C and C++ are very low level, even most programmers can't handle them.
Java, in my opinion, is not a good candidate as it tries to simplify some things, while it messes up with others.

A good starting language would be python, together with pygame (a game library): http://www.pygame.org/news.html

Share this post


Link to post
Share on other sites
mhagain    13430
[quote name='sliders_alpha' timestamp='1334532745' post='4931582']
Do you know any other languages?

because learning an object oriented language first is pretty hard.
first would learn a procedural language such as C;
[/quote]
I'm going to mark this one up. Yes, the last 2 sentences are open to debate (and it's a debate that one is better off not getting into right now), but the first question here is key, and seems to have been missed by everyone else.

[i]Have you programmed before[/i]?

This could be as simple as using a scripting language in your 3D tool of choice, it could be playing around with some programming, anything. But have you at least some level of familiarity with some of the basic concepts of programming?

Because the answer to that question will have a whole heap of influence on the answer to your original question.

Share this post


Link to post
Share on other sites
SimonForsman    7642
[quote name='sliders_alpha' timestamp='1334532745' post='4931582']
Do you know any other languages?

because learning an object oriented language first is pretty hard.
first would learn a procedural language such as C;
[/quote]
(voted you up btw -2 for recommending an impopular language is silly)

Personally i would recommend against C , while the language itself is smaller and thus easier to learn it is also alot harder to use properly (Primarily because of the lack of a modern standard library).

I think we can assume that the OP has 0 programming experience and thus what he really is asking is:
What would i expect when learning programming.

Rather than answering what to expect i'll say what i think he shouldn't expect:

Don't expect fast results, learning programming takes alot of time and games in particular (Which is what the gamedev.net community focuses on) are relativly complex applications, be prepared to spend atleast a few weeks working with purely textbased applications to learn the basics of the language.

Also, for Java more specifically:
The graphics parts of the standard library are not really suitable for games so i'd strongly recommend using a third party library once you get to that point as it will make things alot less painful. I'd recommend looking at Slick(2D game engine), JMonkeyEngine(3D game engine) and LWJGL(Low level wrapper for OpenGL/OpenCL/OpenAL) once you're ready to start making games.

And finally, If you just want to jump into making games i strongly recommend looking at something like Unity3D or UDK instead.

Share this post


Link to post
Share on other sites
sliders_alpha    107
[quote]
[color=#282828][font=helvetica, arial, verdana, tahoma, sans-serif][size=3][left][background=rgb(250, 251, 252)]Personally i would recommend against C , while the language itself is smaller and thus easier to learn it is also alot harder to use properly (Primarily because of the lack of a modern standard library).[/background][/left][/size][/font][/color]
[/quote]
true, [color=#282828][font=helvetica, arial, verdana, tahoma, sans-serif][size=3][left][background=rgb(250, 251, 252)] I didn't think about that.[/background][/left][/size][/font][/color]

[color=#282828][font=helvetica, arial, verdana, tahoma, sans-serif][size=3][left][background=rgb(250, 251, 252)]that's just how it's done in most IT school of my country.[/background][/left][/size][/font][/color]
[color=#282828][font=helvetica, arial, verdana, tahoma, sans-serif][size=3][left][background=rgb(250, 251, 252)]You are not really suposed to learn C to actually use it, it's more of a gateway to other languages.[/background][/left][/size][/font][/color]

[color=#282828][font=helvetica, arial, verdana, tahoma, sans-serif][size=3][left][background=rgb(250, 251, 252)]first they make you learn C, make console programs wich are more educational than anything (calculator, fifo/lifo managment).[/background][/left][/size][/font][/color]
[color=#282828][font=helvetica, arial, verdana, tahoma, sans-serif][size=3][left][background=rgb(250, 251, 252)]2-4 month later you learn C++ to get familiar with object oriented language while still being familiar with the language.[/background][/left][/size][/font][/color]
[color=#282828][font=helvetica, arial, verdana, tahoma, sans-serif][size=3][left][background=rgb(250, 251, 252)]then 1 month later you get to learn java.[/background][/left][/size][/font][/color]

[color=#282828][font=helvetica, arial, verdana, tahoma, sans-serif][size=3][left][background=rgb(250, 251, 252)]I remember trying to learn objective C while I only knew C. It was impossible, but at the time, I had [b]no idea[/b] of what object oriented programation was and the courses I had downloaded were for people already familiar with it^^.[/background][/left][/size][/font][/color]

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this