Learning Java

Discussion in 'Software' started by Publius, Mar 4, 2006.

  1. Publius

    Publius Sergeant

    I am working on a lab tracking system that runs on a Java backbone. The java interprets a proprietary iXML based language that is used to define the workflow and populates a database that tracks all the lab info as well as generates the web interface for use in the lab. I have received training from the software company on the iXML language and have written the code for our workflows, but as a part of the licensing, we also have access to the Java code to do with what we wish. /background

    My question is about learning Java. I am the only member of the lab staff that has experience "working with computers" so this has been put off on me for the most part. There are a few areas of the system that I could use altered or new functionality if I had the ability to alter the Java code running the whole system. So... the software developer offers a 1 week course on Java that is geared to their system. I have a lot of experince with markup languages and I am well versed enough in JavaScript to get what I need done -- albeit usually by decifering and altering existing code. I have had no formal training in programming.

    Can you learn a language like Java in just one week? Or would it be better to take a semester length course -- the contract will pay for either. Or, for anyone that has experience with this sort of situation, will it be better to take a programming class and then attend the week long training session on the system (though that might be a harder sell with the company)

    Any opinions would be helpful.

    Thanks,
    Publius
     
  2. Kodo

    Kodo SNATCHSQUATCH

    Well, you have to look at it a few different ways.
    Typicaly, in the beginning it is programming to make it work. The code is messy and typically could use a lot of refactoring.

    Then as you begin to understand more about the language and the libraries/classes in the language, you start to make your longcuts into shortcuts using what is provided in the language. In the first step it's a lot of "not knowing" what you have available to you so you end up developing functions to do a certain task that are already available in the environment.

    It's during this point you realize that there is A LOT to learn about the language and about programming in general and you start to feel like you've taken on more than you can chew. This point also usually happens when you need to do something rather complex and in search for answers you realize that PROGRAMMING is more than just knowing how to slap functions together in some procedural manner..there is actually a science to it and it takes a long time to wrap your head around a lot of the concepts.

    If you've never programmed in an object oriented environment, I would highly suggest you take some class on "what is programming" followed by some class that teaches "programming concepts" (doesn't really matter what language it's in as it's the concepts you're after). Then I would take a class that outlines your language (Java in this case).

    My thought is if you're going to modify and existing app, make sure you can modify it in such a way that you minimize the risk of injecting some anomoly. In order to do this, you need to understand what is going on in the code. Throwing some "hack" in there to get something to "work" could end up causing problems. It's always good to know the environment before you go digging at it.

    I'm sorry for the verbose post, but I felt it necessary to make my last point with some background commentary on "why".
     

MajorGeeks.Com Menu

Downloads All In One Tweaks \ Android \ Anti-Malware \ Anti-Virus \ Appearance \ Backup \ Browsers \ CD\DVD\Blu-Ray \ Covert Ops \ Drive Utilities \ Drivers \ Graphics \ Internet Tools \ Multimedia \ Networking \ Office Tools \ PC Games \ System Tools \ Mac/Apple/Ipad Downloads

Other News: Top Downloads \ News (Tech) \ Off Base (Other Websites News) \ Way Off Base (Offbeat Stories and Pics)

Social: Facebook \ YouTube \ Twitter \ Tumblr \ Pintrest \ RSS Feeds