Beginning Java Objects
Coming to Java from ColdFusion and ASP has been a long and arduous journey. Those languages lack the strong typing, the formal structure, and the incredible power that Java offers. In the course of grappling with concepts completely foreign to those languages, I have purchased and read many books. I've read Thinking in Java, Java: How to Program, and Java in a Nutshell, all in a futile effort to learn the language in a systematic and useful way. Each book came up short in the teaching department: one covered Java too abstractly, another too concretely. Reading these books' turgid style was a surefire turn-off to the language. After a while, I realized that the problem wasn't totally with me -- that these books were not designed for newcomers to the language.
I then came across two books that changed my view of Java introductory texts completely. Both Beginning Java Objects (hereafter BJO) and Head First Java (hereafter HFJ) take beginner-centric approaches to instruction. They both seem to understand that reading computer language overviews is a necessary evil and that most books fail to connect with their readers. They both take active roles in guiding the reader through Java, though their executions are wildly different.
Two Different Styles The fundamental difference between the two books is teaching style: they're both obviously the products of serious pedagogical thought. BJO's pedagogical considerations are understated, while HFJ's are explicit and pronounced. BJO moves the reader from start to finish on a single project, introducing Java syntax and language elements as needed and largely in the final third of the book. HFJ, on the other hand, divides major topics into smaller units interspersed with pictures, diagrams, and tables in order to break up the monotony.The effect of BJO is that each chapter builds on the previous one, thus discouraging browsing through the book haphazardly. This was the first computer book that I have read cover-to-cover, though it took me forever to get through at over 650 pages. It starts with an introduction to objects and object-oriented programming. This first section gets you thinking about the concept of objects, gradually working in the seeds of the book's example project, so that you're thinking about what objects you'll eventually need. The second part involves modeling those objects you deemed necessary in the first part using UML. It's by no means a complete guide to UML, but the author wants you to realize that UML is a vital part of the design phase.
The final part introduces the majority of Java syntax and focuses on implementing those objects you've modeled. First, the author works on a command-line version of a university registration system using the file system to persist data. Finally, she implements a GUI version using Swing that still uses the file system.
HFJ, on the other hand, reads like a computer book version of Alton Brown's cooking show Good Eats. Syntax lessons share the pages with funny anecdotes, cartoonish diagrams, silly exercises, and sidebars of various kinds. Some of the jokes and visual aids will make you groan, but they are, by and large, helpful and not too lighthearted. At first, the style seems like a gimmick but you quickly lose that sense of novelty. The book is organized around 17 topics that the authors think are important. Each chapter only marginally builds on the previous, so skipping around is both possible and suggested. The topics range from the common (objects, polymorphism) to the rare (RMI, sockets, exceptions). There's also an appendix that covers briefly 10 items that didn't quite make the cut for the book but were too important to leave out entirely. If I had to characterize HFJ's teaching style, I would describe it as visual.
Which is Better? So they have different styles, which one should you buy? I think that if you have to choose one or the other, you need to evaluate your learning style. Think back to when you learned your last language or important subject. How did you learn it? Did you systematically follow a tutorial? Or did you come up with an application and learn what you needed as you needed it? I would describe the first method as a hierarchical learning style and the second as a visual learning style. There's much more cognitive psychology here that would better inform such casual definition, but that's beyond this review.For the hierarchical or systematic learner, BJO is the book for you. The author's presentation of an application from start to finish is very well done and the application actually bears a striking resemblance to something that would exist in the real world. The introduction of UML to the design process will warm the cockles of a systematic learner's heart. What's more, the natural progression from one topic to the next will help those learners who need structure and rigor in their instruction. HFJ might strike this type of learner as cutesy and flighty. While it's definitely a more soporific read, you really have a sense that you're learning from every paragraph and page.
The visual learner would probably not get very far into BJO because there's little code to read or practice with until the third part of the book. HFJ is perfect for this type of reader since it encourages flitting about while it entertains your brain into learning. The topics aren't covered as thoroughly as in other books, but that's because the authors are trying to present only what's necessary in order to avoid cranial overload. The book's breezy style makes for very easy reading and I more than once found myself eager with the anticipation I normally reserve for fiction of the page-turner variety. In addition, the book covers some topics, like exception handling, that I hadn't encountered in my introductory Java book adventures and it does so in a very compelling and memorable way. There is an application that is developed over the course of the book, but it's not as well integrated into the book as the one in BJO is. Unlike BJO, this book sometimes leaves you unsure of why you're learning a particular item until later. Often, though, these lapses are addressed in a sidebar they call "There are no dumb questions," but I would have preferred to see more of them.
Anything Left? Neither book, though, is perfect. For example, both books whizzed through some subjects that really deserve more treatment: exception handling in BJO and variable types in HFJ. Also, neither discussed persistence beyond the file system. In the real world, I have a feeling that file-based persistence is one of the least common varieties. I can understand, though, that dealing with JDBC and the like would have increased the lengths of the books as well as their complexity. Finally, neither book did a good job of telling the reader what the next steps in learning Java should be. Java is a huge topic and it is very confusing for the beginner to get a bearing in the Java ocean. Having an expert say "If you're interested in JSP, you should find books on these subjects next, and then these" is of inestimable benefit. Heck, it's even hard to know what areas of Java you might be interested in if your introduction to Java is casual and not demanded by work needs.BJO omits any mention of unit testing your applications, but I think that's largely a shortcoming of having published the book in 2000. HFJ revels in test-driven development and includes writing a test as the second step of the three-part development process. Each code sample includes a test class and the authors stress repeatedly the importance of TDD. Unfortunately, they don't mention JUnita, glaring omission since the two are practically synonymous. Tests are emphasized but the reader isn't shown how to use them effectively. With the value attendant in a test-first development process, these omissions are of serious concern.
Concluding Thoughts These two books combined make for a very solid introduction to Java. Though they take different tacks, I think the categorization of people's learning style into a simple dichotomy is not realistic. People learn through a variety of means, yes, but often that variety is present in an individual. Reading both books will ensure that your learning style is covered as well as reinforcing the basic principles of good Java programming through repetition. There really isn't enough overlap between the two books to make the reading of them both tedious.Once you've read these two books (or just one if you're a cheapskate), you should probably consider moving on to Bruce Eckel's Thinking in Java and perhaps finding a good book on JDBC or Java and XML. Eckel's book covers much of the same ground as these two, but there are some sections in his book that you absolutely must read to progress as a Java programmer (or learn them on your own, of course). Where you go after that is up to you and I would recommend a quick survey of the topics at prominent Java Web sites to see what sort of areas are available.
You can purchase Beginning Java Objects: From Concepts to Code from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
no body
A) Sex with a mayor?
- OR -
B) This shit: "So they have different styles, which one should you buy? I think that if you have to choose one or the other, you need to evaluate your learning style. Think back to when you learned your last language or important subject. How did you learn it? Did you systematically follow a tutorial? Or did you come up with an application and learn what you needed as you needed it? I would describe the first method as a hierarchical learning style and the second as a visual learning style. There's much more cognitive psychology here that would better inform such casual definition, but that's beyond this review."
I like my weiner .... I liek my weiner .... It's my friend...it is cool it's my weiner!!!
I'm full of admiration for someone who can find the time to learn a language with which you can't actually do anything useful. Dedication to the point of self flagellation.
l am Dr Luisa Pimentel Estrada,
the wife of Joseph Ejercito Estrada, former president of Philippines.
I have children with my husband Jose, Jacqueline and Jude.
Two sons and a daugther.This mail may be coming to you as a surprise or an article but it is very real.
I gave the mail to my daugther Jude to send the mail to any contacts she sees and may be a God fearing person will listen to our plight.
I will want you as the receiver to read through it and think very well if you can help or render us any assistance.
My husband Joseph Ejercito estrada was elected as the 13th President of the Philippines in May 1998 by the people of Philippines due to his popularity
in the film industry made him to win the largest popularity in the history of election in Philippines.
He has attain the position of Senate in 1987,then vice-president in May 1992 and later become the president 1998.
My husband became mayor of his hometown, San Juan in 1969 but it was 1972 that he had a string of public successes. My husband was named one of the
ten Outstanding Young Men in Public dministration. He was also named Most Outstanding Mayor and Foremost Nationalist and Most Outstanding Metro
Manila Mayor.
My husband is recently accused of illegal acquire some four Billion Peso ($80M) during his 31 months in office as President backed up by an uprising
of mass Demonstrators and Senate Traitors. They also said that he has skimmed off tobacco excise Taxes benefitting from government business
deals.Most of them benefitted from my husband's generousity when he was in office.
But they just turned around to be the ones to impeach him. I have tried every possible means to get him out of Detention without success. The
Despotic forces in power appear bent in deriding him, rubbishing his achievements while freezing all his known Bank accounts.He has been accused of economic plunder carrying the maximum penalty of death.
To the worst of it all,all other wives of my husband especailly Guia Gomez and some of his children born outside wedlock are testifying against us.In conjunction with the PCGG funded by the recent President Arroyo Macapagal Gloria.
These are some of the allegations file before my husband in the impeachment trial;
1. Gov. Luis Singson, a longtime friend of my husband, said he provided the my husband with more than $8 million in payoffs from illegal gambling and $2.7 million from tobacco taxes.
2. Witnesses testify one of an account in the Philippines third largest
bank
held millions of dollars in bribes collected by my husband. Equitable PCI
Bank President George Go resigns. The banks senior vice president, Clarissa
Ocampo, said she saw my husband sign a false name to documents withdrawing
$10 million from a secret personal account.
3.
On Dec 31 Five synchronized bomb attacks kill 22 people and injure more
than
120 in Manila, days before the trial is to return from holiday recess.
Police accuse Muslim rebels but many fear the bombs may be linked to the
trial.
4. That my husband received about $8.5 million in pay-offs from illegal
gambling operators.
5. That my husband participated in a real estate business controlled by me
and my son Jose despite a prohibition on outside business interests while
in
office.
My husband is suffering from bronchitis and emphysema right now and he
detained at the Veterans Memorial Medical Center in Quezon City in hospital
prison outside Manila where the life of my husband is in danger.I will let
you know that it is political motivated by Gloria Arroyo.
Meanwhile,the government has said that it may drop rebellion charges
against
my husband allies Senator Juan Ponce Enrile and the former ambassador to
the
United State Ernesto Maceda because they were in the side of my
husband,both
men were later jailed by the government of Gloria Arroyo that they
instigated a march on the preside
If you can't learn another job, you're a fucking moron. American high-tech is no high tech anymore if it can be outsourced abroad. Go back to school and stop whining.
I beg to disagree with you my friend. Although I concur that the women-folk are mighty useful both in the bedroom and the kitchen, I find them quite helpful everywhere inside my domicile. They prepare my dinner, make my bed, bear my children and keep the house clean and respectable.