Previous |
This book was designed to be an introduction. The term Java covers a huge range of technologies and it would be impossible to give a reasonable introduction to all of the significant ideas under the Java umbrella. This section is designed to give some pointers to what I consider to be some of the more important Java technologies as a starting point.
JSF is a server side framework designed as an improvement on using simple JSF. It seems to be the main framework supported by Sun but is one of several frameworks competing to be the industry standard. Two other frequently mentioned frameworks are struts and spring. One of the characteristics of these frameworks seems to involve extensive use of XML configuration files. I have used JSF in a commercial environment and in my opinion it s nowhere near the “silver bullet” that people are looking for to simplify web development with Java.
Enterprise Javabeans are frequently referred to by the acronym EJB. It is a server side architecture for multi-tier client-server systems. If that means nothing to you, then it might be more relevant to know that it is a technology adopted by many very large corporations who appear to be willing to pay very handsomely for associated knowledge. Two EJB development tools that are worth investigating from the financial point of view are BEA WebLogic and IBM Websphere.
http://java.sun.com/j2ee/tutorial/1_3-fcs/doc/EJBConcepts.html
http://www.jboss.org/products/index
Considering the number of people who have smart mobile phones J2ME maybe the most significant area of growth in the uptake of Java
http://java.sun.com/j2me/index.jsp
Junit is a tool for automatic testing. It has become the de-facto standard for testing and just about every serious software development organisation has adopted it. The idea is so good that it has been adopted by other languages such as PHP and C#. Junit can be downloaded as free software and can find out more about it at http://www.junit.org/index.htm
Junit is a key tool for using with Extreme Programming. Extreme Programming is designed to be a new approach to development that encourages the development of tests very early on the cycle and a short and frequent release cycle. It does seem to be one of the more worthwhile development methodologies in an area that sometimes seems dominated by charlatans more interested in selling seminars that actually improving software development.
The style of the Head Firstseries of books is something you will probably either like or hate. They are very distinctive books with a strong element of humour, many, many illustrations and are designed for learning not as a reference. They make strong use of analogy and multiple ways of learning each item varying from crosswords, quiz tests and fill in the blank tests. Rather than delivering the contents and the reader trying to learn from it, they concentrate on learning, even to the extent of having material on how to learn. The authors have been heavily involved in http://www.javaranch.com the premier Java discussion forum and have had almost universally favourable feedback on their writing.
Peter Van Der Linden has been closely involved with Java from the very beginning. This is not the best book for someone who has never done any programming before, but he is excellent at explaining complex concepts. He covers more concepts than HeadfFirst and this would probably act as a longer term reference to HeadFirst.
This is a peculiar recommendation in some ways as this book is actually aimed at people studying for the Sun Certified Java Programmers Exam. However unlike many of the other books aimed at that audience this book also acts as a very good technical book on Java. If you are considering going for that exam in the long run, but looking for a good textbook then this is an excellent buy. You can tell how knowledgeable the authors are as they describe me in the introduction as a “Java guru”.
by Bruce Eckel
ISBN: 0131872486
Although you can download the text of the 3rd edition of this book from www.bruceeckel.com if you can afford it I recommend the updated 4th edition that covers JDK 1.5. You can get an idea of how good it is from the fact that it receives four out of a possible five stars based on 270 reviews. If you read the reviews you can see that those who give it a low rating are almost universally clueless. It is a very good book You can see some sample content from the 4th edition at http://mindview.net/Books/TIJ4.
A version of the text of this book appears as part of an on-line course at my own web site which you can find at
The JavaRanch discussions are the best on the web. It is usually the first site I visit on every web visit I make and I am very proud to have been given the privileged rank of moderator and unique title of Arch Rival.. Visitors and contributors to JavaRanch are some of the most experienced, knowledgeable and helpful on the web (or anywhere if it comes to that).
Plenty of Java discussion. Although it looks slicker than JavaRanch, and is worth checking up on, it does not have the “grass roots” feel of JavaRanch.
Java on the server. Active discussion forums, interviews with movers and shakers.
http://java.sun.com/docs/books/tutorial/
The granddaddy of Java tutorials. It's not exactly in the same league as “Head FirstJava” in terms of readability but its big and its free, what more do you you want, jokes?
I aimed to use only freely available tools to create the material for this book and course. The text for this book was created in OpenOffice.org 2 writer (http://www.openoffice.org). OpenOffice writer is particularly suitable for creating and managing long documents and with automatic generation of tables of contents and alphabetical indexes. It also allows for the direct export of PDF versions of documents was tested/compiled originally in JDK 1.4, with later content tested against JDK 1.5 and 1.6.
Diagrams were created using Dia and argouml. These tools were used under a mixture of Microsoft Windows XP and RedHat Fedora Linux. The content of the course was designed to be exported to the Moodle course management system. (http://www.moodle.org). This export was mainly by hand using a cut and paste approach with some code clean up done using NVU and HTML tidy (http://www.nvu.org). Other tools used were the Gimp (http://www.gimp.org) for bitmap image manipulation, emacs for code editing and indentation, NetBeans for code manipulation
Previous |