Hi there! I am new to Java. Currently have read 1st half of "Head first Java" book. I am thinking of becoming an Android developer in the future. And here I am reading the beginning of an "Android cookbook"<...> which says: "Avoid any sections in any book that talk about topics: Swing, Applets, application entry point main(), J2ME/JavaME, Servlets//JSP, J2EE/JavaEE".
Since I am reading "Head first Java" and the chapter about SWING is coming pretty soon I have a natural question: shall I learn or skip SWING?
Well the list of things to avoid you posted is a list of things that are not used in Android apps.
So if all you want to do with Java is write Android apps it's probably not worth the trouble. In fact learning Swing will just make you aware of some of the things missing in Android. Google has its own way of doing things and I don't mean to imply they are doing it wrong.
It's not what your program can do, it's what your users do with the program.
Swing API is mainly used for the GUI of Windowed/Applet Application. Whereas the Android may use a different set of GUI API. Most of the Java developers would have come across learning Swing API. In this case, the authors intend to say, if the reader is newbie, he can go back and learn some of the Swing basics, or skip them entirely and start learning the Android straight away.
Android does not use Swing at all. Swing is still the GUI of choice for Java applications, but learning it will do precisely nothing for your Android skills. It's not just that the API is different, it's an entirely different UI architecture; learning it will not make learning the Android UI any easier.