Learning Java through plugin development?

Discussion in 'Plugin Development' started by MinecraftPaladin, Aug 6, 2014.

Thread Status:
Not open for further replies.
  1. I'be begun to learn java using thenewboston java tutorial series and so far I've gotten to about video #30. The videos are beginning to get boring for me since I can't really apply what I've learned to anything yet. My question is, can I follow a plugin tutorial series rather than a java tutorial series and still get a good grasp of the java programming language? My goal is to ultimately learn java not just for plugins, but so I can expand my knowledge of programming and eventually learn new languages.

    EDIT: Also, if it is possible for me to learn java by using tutorial on making plugins, which series would you recommend?
  2. MinecraftPaladin If you have gotten to a reasonable understanding of java you should probley just move onto a bukkit plugin tutorial series. However, be careful since a lot of plugin tutorial are outdated.
  3. Offline


    I don't recommend using thenewboston, as he teaches lots of bad practices. But if you think you know Java well enough, go for plugin programming. If you don't understand it, go back to learning Java.

  4. What would you consider to be a reasonable understanding?
  5. MinecraftPaladin
    Just watch a tutorial on how to make a plugin and see if you understand what is going on. If not look up what you don't understand. Search bukkit plugin tutorial on youtube and look for recently made tutorials.
  6. Ok ill try that out, thanks!
  7. Offline


    What "bad practices" exactly does he encourage?

    A resonable understanding would probably mean you know what someone means when they say "control structure," "inheritance," "polymorphism," "reflection," "constructor," "annotation," and "synchronized."

    I think that would be a good start for Bukkit programming.
  8. Offline


    lets start with task based countdowns.
    they deserve execution for such "practice"

    i will state clearly, there is no way to learn anything from video tutorial, if you really want to learn anything - download javadocs\openjdk source\demo bundle and read every single class from begining to very end.

    this is only way to actually learn something, everything else is illusion of learning.
    rbrick likes this.
  9. Offline



    Because you can never learn anything from videos. That seems mighty ignorant.
  10. Offline


    RawCode So what you're really trying to say here is that I never really actually learned Java? Hm.
    leon3001 likes this.
  11. I followed a video on youtube to make my first basic plugin, which I plan to break down later and learn how all the different parts of it operate. When I ran it on my server I got an error and was wondering if someone could tell me how to fix it so I'm not trying to learn from my own incorrect code.

    Error: http://pastebin.com/fwFx94VP
    Code: http://pastebin.com/T8PYq7vy
    Plugin.yml: http://pastebin.com/q8F1JKER

    Although I didn't understand the majority of the code I was using, I'm going to figure it out using bukkit's api page and other online tutorials until I'm able to replicate this plugin without any help. Thanks for all your responses.
  12. Offline


    I suggest if you want to learn Java read a book. I read a book called "Java A Beginner's Guide" by Herbert Schildt.
    I would not watch videos unless you are trying to solve a specific problem or learn something specific. Normally videos leave things out, go in a bad order, and can teach bad programming habits.

    Once you learn Java you can then learn to make plugins. It would be so much easier than learning Java as you try to make plugins.
    It is so much easier to learn Java and/or the Bukkit API from someone who knows it and will teach you it. It is better when you learn from someone else because if you have questions you just ask instead of asking google and you find the wrong thing or start a bad habit doing something such as trying to code without knowing what "static" means or does.
  13. Offline


    MinecraftPaladin in plugin.yml, main should be 'alecr.com.github.broadcast.broadcast' (full.package.mainClassName). Also, it seems it cannot find plugin.yml in your jar, so check if it's in there.
  14. Offline



    Or, instead of learning pure knowledge which is practically already at your fingertips because of google, you could actually be learning better ways to use that knowledge, such as using a one-way-hashmap when you don't need a two-way-hash-map.
    AdamQpzm likes this.
  15. Offline


    My favorite book, which I am still reading now is Java For Dummies 6th edition. There is a lot of good explaining and breaking down of the terms and concepts.
  16. Offline


    Learn Java and understand it, then learn the Bukkit API.
  17. Offline


    mythbusterma Rocoty Bobit

    I wont waste my time explaining why students in MIT read books and not trying to learn anything from random youtube videos.
    There is only source of "coding" knowledge - techspecs shipped by oracle, everything else is reinterpritation of techspecs, in 99% of cases that reimplementation is invalid, since only stupid people can write tutorials based of tutorials.

    as for pure knowledge - in such case there is no reason to visit school, you can get anything from wikipedia, but hold a moment, you wont be able to ask wikipedia, since you unable to write or read.
    same for java, you MUST memorize basics, you MUST understand how core native classes like Integer or String works, there is no way and no hope if you dont understand this level.
  18. Offline


    Yes, having knowledge off the top of your head is good for knowing what to search, or not needing to search...but checking API won't tell you how a String works. I didn't use videos btw, I took a class. And there is some "skill" to be learned beyond coding "knowledge". For example, I used a TwoWayHashMapWithLists when I only needed a HashMap with lists. This is not because I didn't properly understand what a HashMap or my custom TwoWayHashMapWithLists was, but just because I couldn't understand how to fix the problem at the time.
  19. Offline


    Oracle specs shipped with complete source code of every native class and source code of hotspot JVM itself.
    Soo if you met "private native" method in String class or Class class you can also open c++ implementation of natives and get deep understanding about "where is native exception thrown and why".

    i never telling about reading API, i telling about reading implementation.

    also you will never google something that you can't ever name, knowlage of basics is essential and no video will give it.
  20. Offline


    Saying books are the only way to learn is like saying boats are the only way to travel. People learn in different ways, how they go about gaining that understanding is up to them.

    In relevance to the question, as already stated learning the bukkit API before learning java will not help you. You will hit many spots where you're confused and because you didn't learn beforehand, you'll be stuck. Now that's not to say you can't learn both at the same time, but you really should try to learn outside of it.

    As for what I recommend, try looking into Oracle's tutorial.
  21. Offline


    true. I said that.
  22. Offline


    travel eh?
    learning java from youtube is just like sailing on bicycle.
    bicycle usially drown instantly and have no sail, but still people CAN sail on bicycles, becouse people can travel in different ways!

    but i wont suggest anyone to sail on bicycle and wont agree with anyone who post such suggestion.
  23. Offline


    Has it ever occurred to you that books can be explained by their author? Perhaps a blind person would prefer this. Is it such a stretch, then, that somebody with bad reading comprehension would also prefer it to be explained?
  24. Offline


    RawCode Books! Yes! Of course! But the way you said, and I quote,
    made me believe you meant books won't teach you anything. Of course, I know now that's not what you meant.

    That said, I still disagree with you. While I do agree that video tutorials is not a good way to learn and they should be avoided, I think you are plain wrong in saying that they don't teach you anything. I learned what I know in Java from the internet and practice alone, and it was a long, tedious and hard way to learn, which is why I would discourage anyone from taking that path. But don't say I've been confounded to just BELIEVE I have learned anything, because I could easily prove you wrong.

    To sum up
    OP: Buy a book! It will be worth it.
    RawCode Please try to see that you're not always right and stop calling everything invalid.
    Everyone else: Have a good day. I'mma enjoy this one outdoors
  25. But... there are people out there...

    MinecraftPaladin If you're interested in reading an overly long post with few points, I posted my feelings on video tutorials here. :)
  26. Offline


    *that books can be explained by their author*

    Lets open Integer.class JDK source:

    As you may see it have comments for every method and every field.
    There is nothing more to explain.
    Any tutorial about Integer class will be copypaste with random modifications (invalid in 99% of cases) of oracle documentation.

    blind persons argument is joke, how they going to view video?

    i wont waste everyones time and ask straight:

    If you do think that videos (about coding) are good and very educational please explain why oracle use "inferior" method of teaching people and not posted ever single "superior" video tutorial?

    Answer to The Ultimate Question of JAVA, the stupidyoutubevideos, and persons who post that videos:

  27. Offline


    I'm not even arguing for a video. I'm arguing for people teaching you face to face. That has all the benefits of javadocs and videos. The disadvantages are that they have to think quickly, and that usually people won't be willing to teach you face to face.
    Anyhow, the one way that videos could be superior to javadocs is that they show you what to do. If you have no idea what you're doing, that could be helpful. I personally think it would be a good idea when you're setting up your coding environment (i.e. IDE, testing server, where to put your .jar), but I can't see much use for it otherwise.
  28. Offline


    show how to press keys on keyboard?
    show how to type "public class azazazaaza"?

    probably iam to stupid (or to smart) to ever imagine how video can show me something related to coding java or any other language.
  29. After reading through all your responses I'm definitely getting a book to learn java. What book would you all recommend?

    (I read a sample of "Java for Dummies, 6th edition" and like how its set up so if anyone has used this book it'd be awesome to hear what you think of it)
  30. Offline



    If that's the latest edition, go for it. I've heard some good things about it.
Thread Status:
Not open for further replies.

Share This Page