Home Upgrade Search Memberlist Extras Hacker Tools Award Goals Help Wiki Contact

Java 

Java app development questions.

I just started learning Java and want to eventually make apps. How long do you think I'll have to learn Java before I can start making little apps? Any advice would be appreciated.

So far I made the "hello world" program like most beginners do haha.
Well, you are always making "little apps" - even hello world counts! So the answer is you're already doing it!

Naturally I understand your real concern: When will you be able to make substantial apps, that accomplish useful tasks? And to that I can only say whenever you want! Just like with literature, a basic understanding allows you to express almost anything. But having a deep, rooted connection with a language lets one tell a magical story in as many or as little words as they desire.

When you start programming it's a matter of learning your alphabet first, which consists of the basic syntax and the most essential standard libraries. From there on you add to your vocabulary the upper echelons of syntax. And, over time, the utterly indefinite words that are 3rd party libraries, and the more advanced standard libraries.

If you need help or just want to chat, feel free to add my Skype: Jire..
(Aug 16, 2016 12:48 AM)Jire Wrote:  Well, you are always making "little apps" - even hello world counts! So the answer is you're already doing it!

Naturally I understand your real concern: When will you be able to make substantial apps, that accomplish useful tasks? And to that I can only say whenever you want! Just like with literature, a basic understanding allows you to express almost anything. But having a deep, rooted connection with a language lets one tell a magical story in as many or as little words as they desire.

When you start programming it's a matter of learning your alphabet first, which consists of the basic syntax and the most essential standard libraries. From there on you add to your vocabulary the upper echelons of syntax. And, over time, the utterly indefinite words that are 3rd party libraries, and the more advanced standard libraries.

If you need help or just want to chat, feel free to add my Skype: Jire..

Much appreciated response and you definitely earned a +1 :). What about the graphics side of it? Sure, I can know to problem the back end of the game but how do I actually design it and make it come to life.
(Aug 16, 2016 12:52 AM)Revenαnt Wrote:  Much appreciated response and you definitely earned a +1 :). What about the graphics side of it? Sure, I can know to problem the back end of the game but how do I actually design it and make it come to life.

Thank you a lot! 🤝

Making visual apps like games is part of adding more words to your dictionary. I like to use libGDX which is a 3rd party library, but you should probably start with the standard library's AWT.

Conceptually programming is an art of thinking of a something big that you want, and then breaking it down into smaller wants to make progress to your big want.

So... your big want is a game. What kind of game? Well, let's start with something simple; a game that you can move around the screen as a shape.

Moving on, our first logical "want" is getting your shape to show up on the screen. In AWT, we can use a function like drawCircle(width, height, x, y). Next, we want to be able to move our shape. For this, we can use a keyboard listener. But how do we actually move the shape? Well, we want to base the shape's position off something modifiable by our keyboard input, and a variable for the shape's X and Y coordinates are perfect. We can then check which key is pressed in the keyboard listener and modify the variables appropriately, for example the up arrow should reduce the Y, the right arrow should increase the X. Finally all we have to do is pass the coords into drawCircle function.
(Aug 16, 2016 01:39 AM)Jire Wrote:  Thank you a lot! 🤝

Making visual apps like games is part of adding more words to your dictionary. I like to use libGDX which is a 3rd party library, but you should probably start with the standard library's AWT.

Conceptually programming is an art of thinking of a something big that you want, and then breaking it down into smaller wants to make progress to your big want.

So... your big want is a game. What kind of game? Well, let's start with something simple; a game that you can move around the screen as a shape.

Moving on, our first logical "want" is getting your shape to show up on the screen. In AWT, we can use a function like drawCircle(width, height, x, y). Next, we want to be able to move our shape. For this, we can use a keyboard listener. But how do we actually move the shape? Well, we want to base the shape's position off something modifiable by our keyboard input, and a variable for the shape's X and Y coordinates are perfect. We can then check which key is pressed in the keyboard listener and modify the variables appropriately, for example the up arrow should reduce the Y, the right arrow should increase the X. Finally all we have to do is pass the coords into drawCircle function.

Ahh. So essentially you would use a software (like the one you described) to actually add the object and other things into the game. Say for example Angry Birds, you have to create the map and the birds etc in this software?
(Aug 16, 2016 01:52 AM)Revenαnt Wrote:  Ahh. So essentially you would use a software (like the one you described) to actually add the object and other things into the game. Say for example Angry Birds, you have to create the map and the birds etc in this software?

It is not software in the sense of an application, libGDX and AWT are libraries, i.e. code meant to be used by other programmers.

What I explained is the thought process behind writing a substantial app, rather than the specifics of how to do one certain thing. Programming a big project all boils down to accomplishing small goals (what I called "wants") one at a time.

You'll find most programmers have as much interest in telling you how to do one certain thing as authors have interest in telling you the meaning of a word - and in case it wasn't clear - we have no interest at all! Your favorite search engine isn't too bothered, however; programming question or word definition! It's a computer, and computers are good at reciting information from memory.

People on the other hand do something computers cannot; abstract thought! And that's what humans like me actually enjoy telling you; the things computers can't! 🙂
ah could i add you on skype aswell? i started learning java today:)
(Aug 17, 2016 11:31 AM)Fate Gaming Wrote:  ah could i add you on skype aswell? i started learning java today:)

Sure, it wouldn't be a problem.


Possibly Related Threads...
Thread / Author Replies Views Last Post
[C#] by darkdoctorNov 14, 2017 04:01 PM 3 207 Nov 14, 2017 04:01 PM
Last Post: darkdoctor
[Java] by lalapwnApr 4, 2017 02:20 AM 20 1,037 Apr 4, 2017 02:20 AM
Last Post: prakeshrav
[Java] by Lexxi.Dec 7, 2016 01:02 PM 1 234 Dec 7, 2016 01:02 PM
Last Post: CAFEEFAC