This week's book giveaway is in the HTML Pages with CSS and JavaScript forum.
We're giving away four copies of Testing JavaScript Applications and have Lucas da Costa on-line!
See this thread for details.
Win a copy of Testing JavaScript Applications this week in the HTML Pages with CSS and JavaScript forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Bear Bibeault
  • Ron McLeod
  • Jeanne Boyarsky
  • Paul Clapham
Sheriffs:
  • Tim Cooke
  • Liutauras Vilda
  • Junilu Lacar
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • fred rosenberger
  • salvin francis
Bartenders:
  • Piet Souris
  • Frits Walraven
  • Carey Brown

relearning java

 
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
hi there every one i am a new green horn ,


I learned java back in 2007 '2.5 or 2.6' in College but never moved to the next step, i know mostly the basic of java but my programs look dull stupid boring repetitive and totally wrong and yes they work great .

my question is what should i do ? should i restart learning java '7' from the basic maybe i get them wrong? should i start taking on some advanced topics ? or should i try to learning more about design and java specific ?

thanks in advance!
 
Bartender
Posts: 10777
71
Hibernate Eclipse IDE Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

enzo nakama wrote:my question is what should i do ? should i restart learning java '7' from the basic maybe i get them wrong? should i start taking on some advanced topics ? or should i try to learning more about design and java specific ?


It's very difficult to answer questions like this because everyone is different, but personally I'd say the latter. You can install the latest version of Java without necessarily using its features, and if you already worked with v6, then you've probably been introduced to two of the major recent additions to the language: generics and annotations.

And I hate to say, but a fair bit of programming is dull and repetitive. The trick is not to write the same code twice.

My advice: Install v7 and spend a few weeks re-familiarising yourself with the basics. Write some programs and make lots of mistakes; and maybe pick up a good practitioner's book like this one - the best "why to" book I've ever read about any language.

Once you're happy that you've got the basics back, then might be the time to move on to books about design patterns. Alternatively, you might enjoy this one, which includes lots of examples of expert code. Some of it is quite advanced, but there's also plenty in there for the novice; and seeing how other people do things - particularly experts - is a good way to become better yourself.

HIH

Winston
 
enzo nakama
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
thanks for the replay.

i don't recall working with generics or annotations, i learned basic stuff , OO programming , Exception , Inheritance. is there a book that would let me grasp the rest faster ? thinking in java & head first java are both highly recommended, which one to pick or should i pick another one since they don't cover java 7 ? any recommendation?

i did look into effective java but it looked a bit complicated since there is some concepts i still need to learn, for design patterns i might pick Head First Design Patterns "any thoughts '.

thanks on advance!
 
Winston Gutkowski
Bartender
Posts: 10777
71
Hibernate Eclipse IDE Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

enzo nakama wrote:i don't recall working with generics or annotations, i learned basic stuff , OO programming , Exception , Inheritance. is there a book that would let me grasp the rest faster ? thinking in java & head first java are both highly recommended, which one to pick or should i pick another one since they don't cover java 7 ? any recommendation?


Well, Thinking in Java is a bit more advanced than Head First Java, but it probably contains more of the 'concept' stuff that you seem to want. HFJ is really a book for learning Java from scratch - albeit it, a very good one.

i did look into effective java but it looked a bit complicated since there is some concepts i still need to learn, for design patterns i might pick Head First Design Patterns "any thoughts '.


Like I say, everyone is different, but personally, I'd look at EJ before delving into design patterns. Why? Because it's a practical book that shows you good coding techniques, arranged in simple, easy-to-understand rules. Books on design can tend to get a bit esoteric, so unless they contain a lot of good code examples, they can be harder to follow.

And because it's arranged in topics, you don't have to read it in sequence. Several of the "rules" can be picked up in a dozen pages or so. Also: it's actually based on a lot of principles that come directly from design patterns, so you can get a lot of pointers as to what to read next if patterns really interest you.

My 2¢.

Winston
 
Ranch Hand
Posts: 4716
9
Scala Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
personally i picked up most of this gradually. no book. start with good style. good style leads to good design. try to keep your classes and methods as short and one featured as you can. remember what you learned about OO. i went straight from java2 to java7. that is no problem. i picked up the new features as i needed them. i even refactored an old applet written entirely in java1 and compiled it in java7. it is still all java1.
 
Java Cowboy
Posts: 16084
88
Android Scala IntelliJ IDE Spring Java
  • Likes 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
About the Java version numbers: Sun has made this a bit complicated and confusing.

At first (in 1997 or so), there was Java 1.0, and then Java 1.1 (in 1998).

Then, for some reason, Sun decided to name the next version "Java 2 Standard Edition" (J2SE), version 1.2. Nobody knows why they suddenly added the "2" to the name.

Then we got J2SE version 1.3 and 1.4.

The next version was called "Java 2 Standard Edition version 5.0", but they also said the "developer version" was "1.5". Nobody knows why someone decided that this had to have a "commercial version" number 5.0 and a "developer version" number 1.5. Probably someone at Sun thought that for marketing reasons it would be a good idea, but in practice it's only confusing.

For the next version they decided to drop the "2" again. So the next version was called "Java Standard Edition" (Java SE, no longer Java 2 SE) version 6.0 / developer version 1.6.

That numbering scheme is what's still being used today. So, we have Java SE 7.0 (1.7) and soon we'll have Java SE 8.0 (1.8).

Major language changes (generics and annotations) were added in Java 5.

There was no major difference between Java 5 and Java 6.

Some new language features (but not as big as in Java 5) were added in Java 7.

In Java 8, a number of major new features are going to be added. The biggest one will be lambda expressions.

The current Java version is still compatible with version 1.0, so I'd just use the current version (which is Java 7) and learn the new features once you're comfortable with the language again.
 
Yes, my master! Here is the tiny ad you asked for:
Thread Boost feature
https://coderanch.com/t/674455/Thread-Boost-feature
    Bookmark Topic Watch Topic
  • New Topic