General discussion

  • Creator
    Topic
  • #2186993

    Your Advice

    Locked

    by john.templeton2004 ·

    Hi Guys,

    I am interested in learning Java and i would appreciate your advice on the best way to learn Java?

    Kind Regards

    J

All Comments

  • Author
    Replies
    • #3239405

      Learning Java

      by kelvin lin ·

      In reply to Your Advice

      You have three choices –

      1. Enroll in a basic Java course or get a personal tutor to teach u Java.

      2. Read some books for beginners lik Java for Dummies, Teach yourself Java in 24 hours and so on.

      3. Last one is the most affordable way, just google around for the Java tutorials and download simple Java sourcecodes and try to learn & understanding how they work.

      • #3170840

        Get a FUZZY idea first!

        by kumar.siva ·

        In reply to Learning Java

        Try a small worked example first without trying to understand anything. Getting a FUZZY idea first is one way of getting introduced to a new topic. See how it works and then plan your systematic approach to learn. Browse the web for a good example. Java Applets also help to maintain interest in Java.

      • #3170837

        Use RoboCode

        by pez ·

        In reply to Learning Java

        Originally released by IBM as an eductaion tool for learning programming in general and Java in particular, Robocode is now open source: http://robocode.sourceforge.net/

        It’s an excellent Java learning environment. The tast is easy to define and it is fun! We run a WikiWiki trying to collect and share Robocode knowledge. RoboWiki, http://robowiki.net/ It’s a bit unorganized, but use the search engine and the fact that you can ask questions easily on the wiki to find vast amounts of Robocode info.

      • #3170820

        learning

        by robaii ·

        In reply to Learning Java

        There is a method of self study and it is not hard if you look in the right place. Go to http://www.course.com.Find a book with student downloads that will also give you practical experience as you read.I recommend Java Programming by Farrell.

      • #3170812

        Thinking in Java

        by wllmnf ·

        In reply to Learning Java

        I would recommend Bruce Eckel’s “Thinking in Java”. It’s written very well and everything is explained in detail. Another advantage is that the book starts with a thorough foundation before moving to GUIs.
        You can even download the book from http://www.bruceeckel.com.

        • #3170746

          One book can’t give good knowledge of Java

          by vijay.nama ·

          In reply to Thinking in Java

          Yes, one should not stick to one book.
          As there are many void spread topics in Java one should go through some number of books.
          O’Rielly books on pirticular topics can give sound knowledge of over all Java.
          It’s good to follow documentations

        • #3170738

          Worked For Me Also!

          by johnnysacks ·

          In reply to Thinking in Java

          Excellent foundation and principles. I’ve seen others and am eternally grateful to have found ‘Thinking In Java’ first. The on-line version was included in (I think) Sybase Power-J (wow, that goes back a ways!)

      • #3170752

        Build a strong foundation

        by jashburn ·

        In reply to Learning Java

        I would break it into two parts that should be learned in parallel:

        1. Java language (syntax, API, etc.)
        2. *True* Object-oriented programming (OOP) and object-oriented design (OOD)

        My main problem with just attending a course or picking up a Java book to learn it is they usually don’t teach you proper OOP and OOD. E.g., what good is it to understand Java inheritance without knowing how to properly use it (based on my bitter experience with maintaining code with an inheritance tree from hell, etc.).

        Hence, I’d suggest you do the following:

        1. Start by reading up a tutorial or an introductory book (Sun’s Java Tutorial, http://java.sun.com/docs/books/tutorial/ , is a good start.)

        2. Once you’re comfortable with the Java syntax (but not necessarily be very familiar with the Java APIs), pick up a design-oriented book such as Craig Larman’s “Applying UML and Patterns” while continuing with above tutorial/book.

        2a. You should also start reading up on design principles such as the The Open-Closed Principle and The Liskov Substitution Principle, which embody good OOD practices on a small scale.

        3. Once you have a good grasp of the Java language and OOD, you can move on to design patterns such as the Gang of Four’s patterns (Strategy Pattern, Command Pattern, etc.), which teach you good OOD on a larger scale.

        Learning Java APIs such as the Collections, Swing, Applets, etc., is a continuing thing as you can always look up the Java API Specs whenever you need to use them. Once you have a good OOD foundation, you’ll really appreciate the APIs are designed, and even spot the implementation of design patterns there (e.g., the Decorator pattern in the I/O streams API).

        Hth.

        • #3170750

          Addendum

          by jashburn ·

          In reply to Build a strong foundation

          Remember, learning Java is hands-on!

        • #3170588

          In Addition to Building a Strong Foundation

          by nicruzer ·

          In reply to Build a strong foundation

          I strongly agree with jashburn’s post, “Build a Strong Foundation.”

          I would tack on the need for practical experience. Many of the books/tuturials encourage you to write out the sample code given and test it yourself. They also provide sources from which you can cut/paste the code to bypass “all that typing.” However, I have found that actually typing out all of the source code is a good way to solidify learning syntax. If you miss a terminating semicolon or brackets around a group of statements inside an “if” block, the code may compile or run improperly. This forces you to analyze what you may have done wrongly. You can then use the packaged source code to run a compare against what you’ve written to help you discover what you may have incorrectly typed. This discovery is essential to solidifying your learning experience. When everything works properly, begin to experiment with the existing code. Change one thing at a time and test it out to see if it delivers the expected results. Once you’re comfortable with what you’ve learned, design and build your own system based on the the material you’ve just processed.

          Also, if you approach your learning in small bites, you will remember more things. Unless you’re in a groove and really focused, I recommend intentionally limiting your learning intervals to 10-15 minutes at a time. Take a break (get up for a drink of water or something) and come back to it for another chunk of time. Your ability to remember more details increases dramatically with this approach.

      • #3172055

        Learning Java from scratch

        by nigel ·

        In reply to Learning Java

        I tried weekend courses, cbt, books, online tutorials but I only made real progress when I took the UK Open University Network Programming with Java course: 6 months of self study with tutor support.

      • #3171292

        Like duh,

        by avinesan ·

        In reply to Learning Java

        Just wanna add to that list. Learn how java operates in an environment.Then you’re set. Besides you can apply these tips to learning any programming language.

    • #3170641

      have your PC

      by derejegetaneh ·

      In reply to Your Advice

      find a book called “The essence of Java programming” by Glenn Rowe!

      You don’t need any other additional either book or teacher!

      • #3173580

        Just Java

        by rsalcedo ·

        In reply to have your PC

        The answer to this question may depend on what type of programming experience you have.

        I was a C programmer, and personally I found Peter Van Der Linden’s “Just Java” to be excellent. It was actually readable without putting you to sleep. It explained things in a way that a programmer can understand. In other words, it was not designed to teach you how to program, but how to program in Java. It assumed that you already knew your way around code.

        That was way back in the days of Java 1.1 though. I know that the book has been updated for 1.5, but I have not read the updated version http://www.bookpool.com/sm/0131482114

    • #3170618

      Can people chime in on system setup?

      by awolfe_ii ·

      In reply to Your Advice

      My employer has a monstrous Java setup in which we work. I
      feel that I don’t know a good way to organize a desktop system
      to manage a Java environment — classpaths, multiple sets of
      JARs, and such.

      I’m sure john.t would also like to know.

      IDEs are reasonable but they hide so much, I always feel like I’m
      lacking a level of understanding and control by not knowing how
      to make Java stuff work on the command line, what with
      environment variables, multiple JVMs, and such. (I also want my
      desktop webserver to run a JSP engine for that matter.)

      How do people organize Java setups?

      — ADW

      • #3172036

        IDEs are supposed to help us

        by gabriela2 ·

        In reply to Can people chime in on system setup?

        but always I got confused when worked with IDEs.
        My feeling is that they controll me and no vice versa. The best way is to use notepad as editor and command line for c/r. This way you’ll know that if it doesn’t work it has to be a mistake in your code.
        Environment setting is tricky but after a while you’ll understand the ideea.
        For me, the hardest part to understand was: type conversion and interfaces. I didn’t find a book or an article to make me feel these things from the begining.
        I also think that a course would be the best think that one who wants to leard Java can do for himself(because you can ask questions which may be are trivial for somebody else but it is a problem of complex concept perception and our inner reprezentation of them).

        • #3171945

          IDE’s can be good for some programmers

          by alvarocervantes ·

          In reply to IDEs are supposed to help us

          To me IDEs, specially TogetherJ, are excellent tools for doing the work and reusing your work (and using patterns). However, there are two ways of learning: from general to particular and from particular to general. Some people couls understand a concept of a botton from drwaing the GUI first (visually), and then learn the code. For some other ones, they see their properties first and may be never see the look. For some people seeing abstractions is easy, for some other people seeing specific items is their thing. So I recomend IDEs for people who can see abstractions (classes and objects interacting to accomplish a task), but the ones who like to see working things (functions in C) coding at promt interface is fine. If some one wwant to learn both at the same time, a book called Java Java Java shows the UML (Unified Modelling Language) representation of objects and code at the same time; this way you learn OOD Java structure and UML at the same time.

      • #3171831

        more java codes

        by asyari ·

        In reply to Can people chime in on system setup?

        hi guyz do anyone knows of any website which give free java codes, any kind will do as long as as it is .java

        thanks

      • #3191094

        Shell and Notepad too error prone

        by satur9 ·

        In reply to Can people chime in on system setup?

        I use Borland JBuilder 2005, because I can seriously customise the environment, projects, JDK/JRE and libaries used in projects, the highlighting support, browsers, wizards and project templates make hard stuff trivial e.g. refactoring code, searching for classes in my code and in the libraries, running and debugging code, making runnable jars.

        I’ve looked at Eclipse 3.1 and NetBeans 4.1, but they seem much less polished and lack many feature, even with plugins.

    • #3171908

      Thinking in Java

      by kkurnia ·

      In reply to Your Advice

      I found that Bruce Eckel’s book, Thinking in Java is a good start. I actually read that book after I know Java, and it clarifies a lot of things for me and I think if I had that book before I knew Java, that would be a great help.

      I feel the hardest part in learning OO language is not the syntax, but the OO mindset itself. When we have the OO mindset, syntax should be much easier to be pick up.

      And of coures, at the end is to write code as much as possible. there are plenty of examples on the net, as well as Sun Java wesite itself.

    • #3171900

      start

      by albertoro12 ·

      In reply to Your Advice

      Hi, I would start with console applications until you get the basics and start with java graphics applications and finally servlets. If I were you I would search for a tutorial in
      http://java.sun.com/j2se/learning/tutorial/index.html
      Alberto

Viewing 4 reply threads